Корутина<T>
package lua
extends Thread
Доступно в lua
Внешние интерфейсы для корутин Lua.
Статические методы
staticcreate<T>(f:T):Coroutine<T>
Создаёт новую корутину с телом f. f должно быть функцией Lua.
staticresume<A, B>(c:Coroutine<Dynamic>, args:Rest<A>):CoroutineResume<B>
Запускает или продолжает выполнение корутины. В первый раз, когда вы возобновляете корутину, она начинает выполнять своё тело. Значения args передаются в качестве аргументов функции тела. Если корутина сдала управление, resume возобновляет её; значения args передаются в качестве результатов от сдачи управления.
Если корутина выполняется без ошибок, resume возвращает true плюс любые значения, переданные в yield (если корутина сдала управление) или любые значения, возвращённые функцией тела (если корутина завершилась). Если возникает ошибка, resume возвращает false плюс сообщение об ошибке.
staticrunning():CoroutineRunning
Возвращает выполняющуюся корутину и булевое значение, true, если выполняющаяся корутина — главная.
staticstatus(c:Coroutine<Dynamic>):CoroutineState
Возвращает статус корутины.
staticwrap<T>(f:T):T
Создаёт новую корутину с телом f. Возвращает функцию, которая возобновляет корутину каждый раз при вызове. Любые аргументы, переданные в функцию, действуют как дополнительные аргументы к resume. Возвращает те же значения, что и resume, за исключением первого булевого значения. В случае ошибки, распространяет ошибку.
staticyield<T>(args:Rest<Dynamic>):T
Приостанавливает выполнение вызывающей корутины. Корутина не может выполнять функцию C, метаметод или итератор. Любые аргументы в yield передаются в качестве дополнительных результатов в resume.
© 2005–2020 Haxe Foundation
Licensed under a MIT license.
https://api.haxe.org/lua/Coroutine.html