问题描述
||
我喜欢将函数转换为线程而无需使用不必要的代码来定义类的功能。我知道_thread,但是似乎不应该使用_thread。是否有适用于python 3的thread.start_new_thread等效作法?
解决方法
threading.Thread(target=some_callable_function).start()
或者如果您希望传递参数,
threading.Thread(target=some_callable_function,args=(tuple,of,args),kwargs={\'dict\': \'of\',\'keyword\': \'args\'},).start()
, 不幸的是,这并没有直接的等效项,因为Python 3比Python 2具有更高的可移植性,而_thread
接口被视为太底层了。
在Python 3中,最佳做法通常是使用threading.Thread(target=f...)
。这使用了不同的语义,但是是首选方法,因为该接口更易于移植到其他Python实现。