Помощь - Поиск - Пользователи - Календарь
Полная версия: Использование потоков при кодинге на lua
UoKit.com Форумы > Кликер > UO Pilot
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) *

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

Короче вы не очень то этим и занимались)
Cockney
Цитата
Короче вы не очень то этим и занимались)


Никто не будет против если вы освоите данное направление.
DarkMaster
Цитата
Короче вы не очень то этим и занимались)

Я убил на это около двух недель. Сколько мне еще нужно было этим заниматься? Я не в состоянии разбирать на куски эти вещи и лазить в дебаге чтобы фиксить. Возможно что-то не так собрано.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2024 Invision Power Services, Inc.