В обычном Python простые асинхронные задачи обычно могут выполняться с базовым экземпляром threading.Thread
, но при работе со скомпилированными функциями Numba nopython это невозможно.
Есть ли способ выполнить это полностьюиз скомпилированного кода Nopython?
Ниже приведен простой пример желаемой функциональности, но из обычной функции Python:
import threading
import numpy as np
import numba as nb
@nb.njit
def to_run(ary):
ary += 1
def want_jitted():
arg_ary = np.arange(10)
t = threading.Thread(target=to_run, args=[arg_ary])
t.start()
print("This is where other code would go")
t.join()
return arg_ary
print(want_jitted())