python多处理socket.error:[Errno 111]连接被拒绝了?

时间:2012-12-17 20:29:44

标签: python-2.7 connection multiprocessing errno

我在python 2.7中使用多处理进行简单的服务器/客户端连接 当我在一个单独的python shell中运行客户端代码时,连接成功,但是当我作为一个整体运行应用程序时,我得到“socket.error:[Errno 111] Connection refused”。

这是追溯:

Traceback (most recent call last):
  File "./kaboom", line 276, in <module>
    sequence.run(testEnv)
  File "/e/m/amoreau/test_edit/kaboom/src/kbmSequence.py", line 271, in run
    if testEnv.open() != SUCCESS:
  File "/e/m/amoreau/test_edit/kaboom/src/kbmTestEnv.py", line 518, in open
    queueManager = resultsClient.QueueServerClient()
  File "/e/m/amoreau/test_edit/kaboom/resultsClient.py", line 15, in QueueServerClient
    manager.connect()
  File "/usr/lib64/python2.6/multiprocessing/managers.py", line 474, in connect
    conn = Client(self._address, authkey=self._authkey)
  File "/usr/lib64/python2.6/multiprocessing/connection.py", line 143, in Client
    c = SocketClient(address)
  File "/usr/lib64/python2.6/multiprocessing/connection.py", line 263, in SocketClient
    s.connect(address)
  File "<string>", line 1, in connect
socket.error: [Errno 111] Connection refused  

为什么会这样?我已禁用所有防火墙。

1 个答案:

答案 0 :(得分:1)

Howdie,我刚遇到这个问题。我知道这是一个陈旧的答案,但我在相关问题中找到了答案。它列在下面。问题是客户端在服务器创建套接字之前尝试连接到服务器。

嗯,这就是我的情况。将服务器关闭到另一个进程需要比客户端尝试连接稍微长一点。为了测试,我在我的客户端进行了一次睡眠调用,果然,没有更多的错误。

Python Socket Error - Connection Refused