Traceback (most recent call last):
File "<string>", line 1, in <module>
File "D:\program\miniconda\lib\multiprocessing\spawn.py", line 116, in spawn_main
exitcode = _main(fd, parent_sentinel)
File "D:\program\miniconda\lib\multiprocessing\spawn.py", line 126, in _main
self = reduction.pickle.load(from_parent)
File "D:\program\miniconda\lib\multiprocessing\reduction.py", line 238, in _rebuild_socket
return ds.detach()
File "D:\program\miniconda\lib\multiprocessing\resource_sharer.py", line 38, in detach
with _resource_sharer.get_connection(self._id) as conn:
File "D:\program\miniconda\lib\multiprocessing\resource_sharer.py", line 87, in get_connection
c = Client(address, authkey=process.current_process().authkey)
File "D:\program\miniconda\lib\multiprocessing\connection.py", line 500, in Client
c = PipeClient(address)
File "D:\program\miniconda\lib\multiprocessing\connection.py", line 702, in PipeClient
_winapi.WaitNamedPipe(address, 1000)
FileNotFoundError: [WinError 2] 系统找不到指定的文件。

已解决,遇到这个问题的场景是,在进程里开新的 socker_server.accept() 然后造成了问题
后面使用 ZMQ统一管理底层的socket通信,就没有这个问题了
博客作者遇到了在多进程环境下使用socket_server.accept()引发的FileNotFoundError。问题根源在于进程间的socket通信管理不当。为解决此问题,作者转向使用ZeroMQ(ZMQ)来统一管理底层的socket通信,从而避免了文件找不到的错误,实现了稳定且高效的进程间通信。

被折叠的 条评论
为什么被折叠?



