2012-12-17 353 views
4

我正在做一個簡單的服務器/客戶端連接使用python 2.7中的多處理。
當我在一個單獨的python shell中運行客戶端代碼時,連接成功,但是當我作爲一個整體運行應用程序時,出現「socket.error:[Errno 111] Connection refused」。python multiprocessing socket.error:[Errno 111]連接被拒絕?

這是回溯:

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 

爲什麼會出現這種情況?我禁用了所有的防火牆。

+0

您可以舉一個簡短的代碼示例嗎? –

回答

0

Howdie,我只是有這個問題。我知道這是一個古老的答案,但我在相關問題中找到了答案。它列在下面。問題在於客戶端在服務器創建套接字之前嘗試連接到服務器。

那麼,這就是我的情況。將服務器產生到另一個進程中需要稍長的時間,然後客戶端嘗試連接。爲了測試,我在客戶端安排了一次睡眠呼叫,並且確信沒有更多的錯誤。

Python Socket Error - Connection Refused

相關問題