UoKit.com Форумы > Кликер > UO Pilot
Страницы: 1, 2
NeTLeaDeR
Всем привет.
Возможно ли использовать потоки в UOPilot, при использовании lua в качестве скриптового языка? Или может есть какие-нибудь альтернативы?

Мне нужно запустить код, который выполнится через n секунд (с использованием wait), но запустить его нужно не через равные промежутки времени, а по условию. Короче, как можно запустить отложенный код не стопая основного потока программы?
Заранее спасибо
Вверх
Fors1k
Цитата(NeTLeaDeR @ 17.11.2019, 4:05)
...
Или может есть какие-нибудь альтернативы?
Короче, как можно запустить отложенный код не стопая основного потока программы?

"Основной поток программы"
Код
...
if hour = 22 // отложенный запуск
    start_script 2
end_if
...
end_script

"отложенный код"
Код
//отложенный код

Вверх
Levo222
Цитата(Fors1k @ 19.11.2019, 1:53)


if hour = 22 // отложенный запуск


Помоему он спрашивает можно ли в одном скрипте выполнять 2 потока, а не в 2-х. Меня тот же вопрос интересовал
Вверх
Fors1k
Цитата(Levo222 @ 19.11.2019, 19:30)

Помоему он спрашивает можно ли в одном скрипте выполнять 2 потока, а не в 2-х. Меня тот же вопрос интересовал

В чем разница, если имеется возможность глобального обращения к переменным?
Вверх
Levo222
Цитата(Fors1k @ 20.11.2019, 0:12)

В чем разница, если имеется возможность глобального обращения к переменным?

Это уже не многопоточность а многонаправленность., как если бы 10 дел делал не 1 человек а делегировал свои полномочия 9-ти разным людям, которые бы за него данную работу делали.
Вверх
Fors1k
Цитата(Levo222 @ 22.11.2019, 22:29)

если бы 10 дел делал не 1 человек а делегировал свои полномочия 9-ти разным людям, которые бы за него данную работу делали.

И в итоге 10 дел стали бы выполняться одновременно, что и является многопоточностью.
Если нужно сделать бассейн, и первый копает для него яму, не имея права останавливаться, то он может попросить второго сбегать за шлангом с для воды, и подключить его. Это автор и просил.
Вверх
Levo222
Цитата(Fors1k @ 23.11.2019, 4:22)

И в итоге 10 дел стали бы выполняться одновременно, что и является многопоточностью.
Если нужно сделать бассейн, и первый копает для него яму, не имея права останавливаться, то он может попросить второго сбегать за шлангом с для воды, и подключить его. Это автор и просил.

Нет это не многопоточность, вот сейчас решается такой вопрос количеством ядер(это как количество человек привлеченных к работе). По своей сути вопрос о многопоточности относится к качеству единоличного исполнения всего кода одним ядром/скриптом, а не количественным в увеличении скриптов/ядер/ПК. Чего Lua не может, как я понял из ответов где я ссылку дал.
Вверх
DarkMaster
Многопоточность есть. НО там corutine который лично мне вообще непонятно на кой черт существует, т.к. поток там хоть и отдельный, но при его работе приостанавливается основной. Если либы для luajit которые реализуют полноценную многопоточку. Часть из них не удалось скомпилить, то, что было скомпиленным у меня в рамках пилоте не прошло встроенные тесты. Вопрос по-прежнему очень актуален.

https://github.com/torch/cutorch
https://github.com/torch/threads
были еще какие-то решения
Найти быстро не получилось по своим архивам, но гугл помнит =)
Вверх
Levo222
Цитата(DarkMaster @ 24.11.2019, 22:11)

у меня в рамках пилоте не прошло встроенные тесты. Вопрос по-прежнему очень актуален.

Короче вы не очень то этим и занимались)
Вверх
Invision Power Board © 2001-2024 Invision Power Services, Inc.
Version for Pocket PC © 2006-2024, IPBest Studio.