|
Boost : |
Subject: Re: [boost] [interprocess][trunk][windows] named_mutex doesn't work whithin a DLL
From: Ion Gaztañaga (igaztanaga_at_[hidden])
Date: 2010-09-06 16:24:57
El 06/09/2010 19:55, Joaquin M Lopez Munoz escribió:
> System is:
>
> Microsoft Windows XP
> Media Center Edition
> Version 2002
> SP 2
>
> There's some evidence on the net (Google for it) that
> IWbemLocator::ConnectServer hangs when used on DLL loading time,
> though no definite confirmation or available workarounds.
Thanks, I plan to implement mutex using native CreateMutex soon but this
problem will appear then if we try to use shared memory in DLL loading
(and this includes managed_shared_memory in Windows!).
I'm afraid I have no easy fix for this, because I have no other way to
obtain a reliable bootup timestamp (which I need to obtain kernel
lifetime for shared memory). I think you could (until we fix this) use
native windows mutexes (and maybe windows_managed_shared_memory) in
intermodule_holder. There is another advantage: the mutex/shared memory
will cleanup automatically on process exit or crash.
Best,
Ion
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk