你应该采用另一个端口而不是普通端口 8000 通常正在使用的端口。
8000
另一个想法是必须放置任何套接字选项 bind 要么 connect ZMQ中的方法。
bind
connect
所以你的代码看起来像这样:
def start_server(): context = zmq.Context() footage_socket = context.socket(zmq.SUB) footage_socket.setsockopt_string(zmq.SUBSCRIBE, np.unicode('')) try: footage_socket.bind('tcp://192.168.1.18:5020') # Another port used. except: pass return footage_socket
[ 的 注意 强> ]:
不要忘记更改客户端端口( .connect() ) 至 5020 。
.connect()
5020
[UPDATE]:
try-except
footage_socket.close()