Демонстрационный скрипт:
Через непродолжительное время терминал вешается.
Зависание происходит при выполнении инструкции 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.
Надо делать так, как надо. А как не надо - делать не надо.