What happened to thread.start_new_thread in python 3 What happened to thread.start_new_thread in python 3 python-3.x python-3.x

What happened to thread.start_new_thread in python 3


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

or if you wish to pass arguments,

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


Unfortunately there is not a direct equivalent, because Python 3 is meant to be more portable than Python 2 and the _thread interface is seen as too low-level for this purpose.

In Python 3 the best practice is usually to use threading.Thread(target=f...). This uses different semantics, but is preferred because the interface is easier to port to other Python implementations.