[zeromq-dev] I've written a completely new C# API for ZeroMQ

Martin Sustrik sustrik at 250bpm.com
Thu Dec 23 08:51:16 CET 2010


On 12/21/2010 07:57 PM, Alex Forster wrote:
>> For example, the names of inproc endpoints are stored in the
>> context. If library A uses inproc endpoint named X and library B
>> accidentally uses endpoint X as well, they start messining with
>> each other.
>
> That's a very good point, I'll definitely have to address that. I'm
> willing to jump through hoops to keep automatic context management,

Depends on the language runtime. If .NET has no way to keep two 
instances of the same library distinct and not messing with each other, 
you'll presumably have to have something like context. If .NET has a 
mechanism to separate the two, it's a non-issue.

> since it's such a perfect fit for RAII-esque language features, and
> API simplicity was my main motivation for a rewrite. Are there any
> other specific points of contention you can think off off-hand, or
> are there any fundamental issues that completely prevent it from
> working stably this way?

Multiple calls to zmq_init for example. If you just cache the context 
and reuse it as needed, the io_threads parameter won't be honoured the 
second time.

Martin



More information about the zeromq-dev mailing list