zthread_fork 的 NetMQ 等价物是什么?

What is the NetMQ equivalent of zthread_fork?

我想使用 NetMQ 实现带外快照。 zeroMQ (ØMQ) 在 "Chapter 5 - Advanced Pub-Sub Patterns" in the section "Getting-an-Out-of-Band-Snapshot". There are also examples of a server realizing this pattern in C and Java.

中描述了这个概念

C 的 zthread_fork() 函数或 Java 的 ZThread.fork() 方法的 NetMQ 等价物是什么?

zthread_fork是CZMQ创建线程的可移植API。 zthread 也已过时,czmq 现在鼓励使用 zactor。

无论如何,NetMQ 有 NetMQActor,它是 zactor 的端口。

要仅使用 zthread_fork,您可以创建一对成对套接字,将一端连接到线程上,您就拥有了 zthread_fork。像这样:

var pipe = context.CreatePairSocket();
pipe.Bind("inproc://socket-pair");

var threadPipe = context.CreatePairSocket();
threadPipe.Connect("inproc://socket-pair");

Thread thread = new Thread(Run);
thread.Start(threadPipe);