python - 从 zmq.error.ZMQError : Address already in use 恢复

标签 python sockets unix zeromq amqp

我在运行 PAIR 时按了 Ctrl-C与 ZMQ 的模式(非阻塞客户端服务器)连接。后来当我尝试运行 REQ-REP 时(阻塞客户端单服务器连接)模式,我不断收到 Address already in use错误。我尝试使用 netstat -ltnp | grep :<my port> 运行 netstat但这没有列出任何过程。

那么到底是谁在使用这个地址?

还有如何优雅地关闭这样的套接字连接?

最佳答案

问题一:

如果你这样做 sudo netstat -ltnp ,在 Linux 类型的操作系统上,您很可能会看到拥有该端口的进程。用 kill -9 <pid> 杀死它.

问题二:

当您退出程序时,关闭您的套接字,然后调用 zmq_ctx_destroy()。这破坏了上下文。参见 http://zguide.zeromq.org/page:all#toc17了解更多信息。

关于python - 从 zmq.error.ZMQError : Address already in use 恢复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19159771/

相关文章:

python - Conda Build - 创建 Conda 包在平台 win-64 的依赖项上失败

python - 在 pyspark 数据帧的其余列中搜索 column1 中的值

java - 小程序中的netty抛出AccessControlException

c - 如何确保服务器在可能的情况下监听 IPv6 而在其他情况下监听 IPv4?

mysql - 合并多个 .SQL 文件的工具

python - 如何用饼图绘制分类变量

python - 树中的递归

C# 异步 TCP 套接字 : Handling buffer size and huge transfers

javascript - 尝试镜像使用stradown.js 的站点

bash - Unix/bash。对于带有数字的文件名并行两个 for 循环