Python线程参数传递

时间:2019-06-22 15:19:54

标签: python thread-safety python-multithreading

我想了解将参数传递给线程的方式与是否对线程安全有影响的区别。

我正在使用python 3.7.3,两个代码实例对我来说都运行正常。

示例1:
thread = threading.Thread(target=MultiHandler().handle, args=(argument))

示例2:
thread = threading.Thread(target=MultiHandler().handle(argument))

2 个答案:

答案 0 :(得分:0)

close_old_connections应该是要被调用的可调用对象,而不是函数调用的结果,
除非您的第二个示例函数返回另一个可调用对象(target返回---> {{ 1}})。

答案 1 :(得分:0)

Python允许在线程中使用args和kwargs作为参数。这可用于在函数内部进行决策。 这是可调用函数,其中线程安全性不应用于参数。