You do know that clrzmq2 supported all of what you mentioned besides the reference counting.
If you had of submitted a patch for clrzmq2 it would have been very welcome. On Tue, 2010-12-21 at 09:00 -0200, Vinicius Chiele wrote: > Great job Alex, your implementation is very clean and simple, I liked > it. > > Vinicius Chiele > > 2010/12/21 Alex Forster <a...@alexforster.com> > I have quite a few gripes with clrzmq and clrzmq2, and NZMQ is > incomplete in several areas, so over a few weekends this past > month I've written a new C# API for ZeroMQ based on the 2.0.10 > release of zmq.h. > > > ZeroMQ Interop v0.8.190.10354 (beta) > http://zeromq.codeplex.com > > > * Feature-complete > * MIT licensed > * Targeted at both Microsoft and Mono .NET 2.0 CLRs (though it > does require a 3.5 compatible compiler, basically for lambda > syntax) > * Includes binaries for both 32 and 64bit platforms (without > any #ifdefs) > > > Here's an example using Pub/Sub sockets- > > > > > // Set up a publisher. > > > > > > var publisher = new ZmqPublishSocket { > > Identity = Guid.NewGuid().ToByteArray(), > > RecoverySeconds = 10 > > }; > > > > > > publisher.Bind( address: "tcp://127.0.0.1:9292" ); > > > > > > // Set up a subscriber. > > > > > > var subscriber = new ZmqSubscribeSocket(); > > > > > > subscriber.Connect( address: "tcp://127.0.0.1:9292" ); > > > > > > subscriber.Subscribe( prefix: "" ); // subscribe to all > > messages > > > > > > // Add a handler to the subscriber's OnReceive event > > > > > > subscriber.OnReceive += () => { > > > > > > String message; > > subscriber.Receive( out message, nonblocking: true ); > > > > > > Console.WriteLine( message ); > > }; > > > > > > // Publish a message to all subscribers. > > > > > > publisher.Send( "Hello world!" ); > > > A few things that make this sample stand out from the other > two ZeroMQ C# libraries- > > > * There's no need to manage your ZeroMQ context; it's taken > care of on a per-AppDomain basis using refcounting. > * There is no "message" object because it provides no added > benefit in C#. Messages are simply Byte[]s, with overloads > throughout the API that accept Strings. > * First-class support for .NET events programming, implemented > using zmq_poll() (but that's completely transparent to the > user). > > > I'd love some feedback. I'm just starting to use it in a > project I'm working on, and so far it all seems to be working > smoothly and at high throughput, but I'm releasing it as > "beta" because I don't feel that it has enough real-world > experience yet. > > > Alex Forster > > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev > > > > _______________________________________________ > zeromq-dev mailing list > zeromq-dev@lists.zeromq.org > http://lists.zeromq.org/mailman/listinfo/zeromq-dev _______________________________________________ zeromq-dev mailing list zeromq-dev@lists.zeromq.org http://lists.zeromq.org/mailman/listinfo/zeromq-dev