ZMQ inproc 根据官网文档解释:
zmq_inproc – ØMQ 本地进程内(线程间)传输方式
注意事项:
- 进程内传输方式意味着在共享ZMQ context的线程间通过内存方式传输数据。
- 通讯地址必须保证已经被相同context上的一个socket创建了。
- 文件名必须是在与这个socket关联的ZMQ context上是唯一的,而且长度不能大于256字节。
总结:inproc 是指同一个ZMQ context的进程内通信。
验证一:进程内,同一个inproc地址可以绑定到不同的ZMQ context
验证二:进程内,inproc只能在相同的ZMQ context内进行通信
此时我们将线程task_declare_a内部的context重新创建一个,task_declare_a阻塞在recv,无法接受到消息。