我喜欢将函数转换为线程而没有不必要的行来定义类的能力。我知道_thread,但看起来你不应该使用_thread。对于python 3,是否有一个类似于thread.start_new_thread的良好实践?
答案 0 :(得分:30)
threading.Thread(target=some_callable_function).start()
或者如果你想传递参数,
threading.Thread(target=some_callable_function,
args=(tuple, of, args),
kwargs={'dict': 'of', 'keyword': 'args'},
).start()
答案 1 :(得分:4)
不幸的是,没有一个直接的等价物,因为Python 3比Python 2更易于移植,_thread
接口被视为太低级别。
在Python 3中,最佳做法通常是使用threading.Thread(target=f...)
。这使用不同的语义,但是首选,因为接口更容易移植到其他Python实现。