因此,当我在与 print 后跟 time.sleep 相同的代码中导入 multiprocessing 时,它将打印字符串 3 次,而不是我请求的 1 次。我想知道为什么会发生这种情况以及如何解决这个问题(如果可能),提前谢谢您。我的代码如下。
import time
import multiprocessing
print('teeeest')
time.sleep(3)
def test1():
print('test1')
def test2():
print('test2')
if __name__ == '__main__':
p1 = multiprocessing.Process(target=test1)
p2 = multiprocessing.Process(target=test2)
p1.start()
p2.start()
p1.join()
p2.join()
Run Code Online (Sandbox Code Playgroud)
代码结果如下:
teeeest
teeeest
teeeest
test1
test2
Run Code Online (Sandbox Code Playgroud)
(注意“test1”和“test2”按预期同时发送)