我知道在python中使用本地线程是可能的,但由于某种原因,我无法找到实现此目的的确切语法。我有以下示例代码来测试这个,但这不起作用 -
module1.py
import threading
def print_value():
local = threading.local() // what should I put here? this is actually creating a new thread local instead of returning a thread local created in main() method of module2.
print local.name;
module2.py
import module1
if __name__ == '__main__':
local = threading.local()
local.name = 'Shailendra'
module1.print_value()
Edit1 - 共享数据应仅可用于调用这些函数的线程,而不能用于系统中的所有线程。一个例子是Web应用程序中的请求ID。
答案 0 :(得分:0)
在模块1中,定义一个}
<强>模块1 强>
threading.local
<强>模块2 强>
import threading
shared = threading.local()
def print_value():
print shared.name
答案 1 :(得分:-1)