我想在进程之间进行通信(一个进程执行某些操作,将结果发送到与其有关的其他进程)。 所以我使用了这段代码:
服务器:
from multiprocessing.connection import Listener
address = ('localhost', 6000) # family is deduced to be 'AF_INET'
listener = Listener(address, authkey='secret password')
conn = listener.accept()
print 'connection accepted from', listener.last_accepted
while True:
msg = conn.recv()
# do something with msg
if msg == 'close':
conn.close()
break
listener.close()
客户端:
from multiprocessing.connection import Client
address = ('localhost', 6000)
conn = Client(address, authkey='secret password')
conn.send('close')
conn.close()
(来源:interprocess communication in python)
它就像一个魅力。但我想从另一台计算机上运行这两个程序。在Comp。我有这两个程序。我通过Wifi Lan连接到Comp B的Comp A(使用ssh连接),我运行这两个程序(这意味着它们在Comp A上运行),但是它们没有相互连接。我尝试过使用wifi局域网地址(192.168.x.x)而不是“localhost”,但它既不能正常工作。我必须使用什么参数而不是“localhost”,以便这两个程序可以连接。或者最简单的方法是什么。 干杯!
答案 0 :(得分:0)
转到命令提示符并在另一台计算机上键入ipconfig
。您需要使用IPv4地址。您还需要确保端口已打开并启用了ssh。替换' localhost'使用IPv4地址。