Forgot to mention the errors I am getting, I get 2 exceptions at different times:
https://gist.github.com/1912280 On 25 February 2012 23:23, Seif Attar <[email protected]> wrote: > Hello, > > I am trying to write a logger for NHibernate that will pulish log > messages with 0mq, each logger might be used from a different thread. > > The way I implemented this is by started a running thread with a PULL > inproc socket that will get the messages from the logger and publish > them using tcp. > > Each of the loggers creates a push socket that sends messages to the > sink running in the main publisher thread. > > This works ok, only problem I am having is that I can't dispose of the > objects properly, I need a way to send a kill signal to the loggers > before terminating the context. I looked at how this should be done, > and it would appear that I need to have a controller in the main > thread that sends the kill signal to another socket on the logger > (something along the lines of http://zguide.zeromq.org/cs:tasksink2 > and http://zguide.zeromq.org/cs:taskwork2). However, this means that > the loggers will block the caller, which won't work. > > Any recommendations on how to go about this? The code is on github: > > The class that holds the main thread is: > > https://github.com/seif/NHibernate.ZMQLogPublisher/blob/master/src/NHibernate.ZMQLogPublisher/Publisher.cs > > and the logger: > > https://github.com/seif/NHibernate.ZMQLogPublisher/blob/master/src/NHibernate.ZMQLogPublisher/ZmqLogger.cs > > This is the Logger factory which Nhibernate calls into, nothing 0MQ > specific in here: > > https://github.com/seif/NHibernate.ZMQLogPublisher/blob/master/src/NHibernate.ZMQLogPublisher/ZmqLoggerFactory.cs > > I had tried opening a new Socket in each ZMQLogger.Publish call, but > that caused an exception (Too many files open), understandble, so I am > back at having to send the kill signal. > > Any help appreciated. > > Thanks, > Seif _______________________________________________ zeromq-dev mailing list [email protected] http://lists.zeromq.org/mailman/listinfo/zeromq-dev
