[rabbitmq-discuss] .NET client SimpleRpcServer question
ryan at acceleration.net
Wed Jun 10 14:07:24 BST 2009
Matthias Radestock wrote:
> Thanks for the patch. If you don't mind, we'll look into this in a few
> weeks when the person who wrote the original code is back from holidays.
Certainly. I'll put my patch into production today, and will send you a
new patch if I run into problems.
> On the latter point, the locks look a bit too coarse-grained to me,
> covering activities that can take an indeterminate amount of time,
> such as interactions with the server. That may be unavoidable, but
> without understanding every single detail of the code it's hard to be
They are a bit heavy-handed. It is very possible that Subscription /
SimpleRpcServer could be refactored to maintain thread safety with finer
locks. I was wanting to make minimal changes, so I didn't go that
route. I walked through it with another co-worker for a sanity check,
and locking those large blocks seemed the only way to ensure correctness
in these cases:
1. calling Close() while the subscription is blocked waiting for a
2. calling Close() while the server is processing a message
3. calling Close() after the subscription has fetched a message but
before the server has started processing it
I'm looking forward to hearing from the original author next month.
Director of Programming Services
2831 NW 41st street, suite B
Gainesville, FL 32606
Office: 352-335-6500 x 124
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the rabbitmq-discuss