С Haxe <4, это немного громоздко. Он работает так же, как с Haxe 4, но не существует одного кроссплатформенного типа Thread, что делает все немного сложнее (cpp.vm.Thread, neko.vm.Thread и т. Д.). </p>
С Haxe 4- даже в его текущем состоянии кандидата вы достигнете этого с sys.thread.Thread
. Каждый раз, когда вы хотите создать поток для выполнения вашей функции, просто вызовите Thread.create
. Следует отметить, что эта функция принимает функцию без аргумента, которая ничего не возвращает. Если ваша функция принимает один или несколько аргументов, вы можете вызвать ее метод bind
, как описано здесь: https://haxe.org/manual/lf-function-bindings.html.
Короче говоря:
import sys.thread.Thread;
function f2() {
var f1thread = Thread.create(f1.bind("Hey")); // runs instantly
}
Само собой разумеется, вы должны проверить, что платформа, для которой вы собираете, имеет потоки.