What is the reason of this errror: “PermissionError: [WinError 5] Access is denied”

↘锁芯ラ 提交于 2020-06-27 07:09:11

问题


I try to run this example code on Pycharm2018.3.3, it didn't work out. But the same code can run on the IDLE without any error.

My environment is Python3.7 + windows10.

from multiprocessing import Process, Queue

def f(q):
    q.put([42, None, 'hello'])

if __name__ == '__main__':
    q = Queue()
    p = Process(target=f, args=(q,))
    p.start()
    print(q.get())    # prints "[42, None, 'hello']"
    p.join()
Process Process-1:
Traceback (most recent call last):
  File "C:\Users\WYM\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\process.py", line 297, in _bootstrap
    self.run()
  File "C:\Users\WYM\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\process.py", line 99, in run
    self._target(*self._args, **self._kwargs)
  File "E:\Spider2\ControlNode\test.py", line 4, in f
    q.put([42, None, 'hello'])
  File "C:\Users\WYM\AppData\Local\Programs\Python\Python37-32\lib\multiprocessing\queues.py", line 82, in put
    if not self._sem.acquire(block, timeout):
PermissionError: [WinError 5] Access is denied.

回答1:


This issue may be a known bug with Python 3.7.2

I was experiencing the same issue and fixed it by creating a new virtual environment with Python 3.7.0



来源:https://stackoverflow.com/questions/54176876/what-is-the-reason-of-this-errror-permissionerror-winerror-5-access-is-deni

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!