Демонстрационный скрипт:
Через непродолжительное время терминал вешается.
Зависание происходит при выполнении инструкции SetCell в main.
Код |
---|
local AllTrades = {} function main() ID = AllocTable() AddColumn(ID, 1, '1', true, QTABLE_INT_TYPE, 20) CreateWindow(ID) row = InsertRow(ID, -1) while not stoped do if #AllTrades ~= 0 then local trade_num = table.sremove(AllTrades, 1).trade_num table.ssort({0, 0}, function() SetCell(ID, row, 1, ''..trade_num) return true end) else sleep(1) end end end function OnAllTrade(alltrade) table.sinsert(AllTrades, alltrade) end |
Через непродолжительное время терминал вешается.
Зависание происходит при выполнении инструкции SetCell в main.
Надо делать так, как надо. А как не надо - делать не надо.