我是python线程以及一般编程的初学者,但找不到这个问题的答案。我想设置一个变量,一个线程可以修改,另一个可以使用。我的代码是:
import threading
global x
x = 1
def xcounter():
x = 2
print('x is {} here'.format(x))
def xprint():
print(x)
t = threading.Thread(target = xcounter)
r = threading.Thread(target = xprint)
t.start()
r.start()
我希望发生的事情:
x is 2 here
2
最终发生的事情:
x is 2 here
1
这里的线程顺序可能不是罪魁祸首,因为我既可以循环运行也可以保持不变。