Subject: Re: [boost] [interprocess] More robust message_queue and interprocess_condition?
From: Ross MacGregor (gordonrossmacgregor_at_[hidden])
Date: 2011-11-03 17:06:26
Ross MacGregor <gordonrossmacgregor <at> gmail.com> writes:
> Sergei Politov <spolitov <at> gmail.com> writes:
> >[interprocess] message_queue hangs when another process dies
> > Suppose we have 2 processes, one sends messages to queue, another reads
> > them. When reading process dies (for instance using End process) during
> > message_queue.receive the another process hangs in send.
> I am wondering if there isn't a fairly simple solution. It
> wouldn't be perfect but would be far better behavior than we have now.
Just an update for everyone. Back in September, I worked with Ion to get a
configurable timeout feature built into interprocess_mutex. It will throw a new
timeout exception if locked for more than a set period of time (configurable at
compile time). This will fix the issue of message_queue and
interprocess_condition hanging up on termination of the dependent process.
Hopefully this feature will be available in Boost 1.48.