该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
这两天在学多进程部分,发现一使用锁运行就出问题,报错如下:
D:\pytest\venv\Scripts\python.exe D:/pytest/guess_game.py
hello world 5
Process Process-6:
Traceback (most recent call last):
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "D:\pytest\guess_game.py", line 8, in f
l.release()
OSError: [WinError 6] 句柄无效。
Process Process-7:
hello world 6
Process Process-3:
Traceback (most recent call last):
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "D:\pytest\guess_game.py", line 8, in f
l.release()
OSError: [WinError 6] 句柄无效。
Traceback (most recent call last):
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "D:\pytest\guess_game.py", line 4, in f
l.acquire()
PermissionError: [WinError 5] 拒绝访问。
Process Process-9:
hello world 8
Traceback (most recent call last):
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "D:\pytest\guess_game.py", line 8, in f
l.release()
OSError: [WinError 6] 句柄无效。
hello world hello world7 9
Process Process-8:Process Process-10:
Traceback (most recent call last):
Traceback (most recent call last):
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 297, in _bootstrap
self.run()
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "C:\softwares\python37\lib\multiprocessing\process.py", line 99, in run
self._target(*self._args, **self._kwargs)
File "D:\pytest\guess_game.py", line 8, in f
l.release()
File "D:\pytest\guess_game.py", line 8, in f
l.release()
OSError: [WinError 6] 句柄无效。
OSError: [WinError 6] 句柄无效。
--------------
不使用lock就没问题。有没有大佬知道是个什么情况,给萌新解释下