unable threading thread start error current_thread _thread python multithreading python-3.x python-multithreading

start - threading documentation python



¿Qué pasó con thread.start_new_thread en python 3? (2)

Me gustó la posibilidad de convertir una función en un hilo sin la línea innecesaria para definir una clase. Sé de _thread, sin embargo, parece que no se supone que uses _thread. ¿Existe una buena práctica equivalente de thread.start_new_thread para python 3?


Desafortunadamente, no hay un equivalente directo, ya que Python 3 está diseñado para ser más portátil que Python 2 y la interfaz _thread se considera un nivel demasiado bajo para este propósito.

En Python 3, la mejor práctica es usar threading.Thread(target=f...) . Esto usa una semántica diferente, pero se prefiere porque la interfaz es más fácil de portar a otras implementaciones de Python.


threading.Thread(target=some_callable_function).start()

o si desea pasar argumentos,

threading.Thread(target=some_callable_function, args=(tuple, of, args), kwargs={''dict'': ''of'', ''keyword'': ''args''}, ).start()