Boost logo

Boost Users :

Subject: Re: [Boost-users] Problem with boost::interprocess::ipc::message_queue
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2011-04-01 12:58:21


El 01/04/2011 9:57, Ming Lu escribió:
> Hello Everybody,
>
> i used boost::interprocess::ipc::message_queue (boost 1.40) in my
> project. it works perfect. after upgrade from boost 1.40.0 to 1.46.0 i
> do have a problem with the message_queue.
>
> the receiver-application loaded these complettly different Dlls (in
> compare with 1.40) and unloaded them repeatly (endless).

Windows WMI functions are called when creating or unlinking shared
memory or message queues. Sadly WMI usage is causing a lot of problems
and it's use will be removed. That means that shared memory and message
queues will survive to reboots, but that behavior is allowed by POSIX.
My tries to use kenel bootstamp and WMI to achieve kernel lifetime have
caused a lot of problems, so it's better to go back to the old,
pre-boost 1.39 behaviour than continue receiving bugs.

You can get the old behaviour commenting

#define BOOST_INTERPROCESS_HAS_KERNEL_BOOTTIME

in boost/interprocess/detail/tmp_helpers.hpp

Best,

Ion


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net