HI, igaztanaga
I don't use any of experimental detail classes
like("emulation_recursive_mutex").
I'm using wmanaged_windows_shared_memory::find method to find a element,
and find method eventually
will call emulation_recursive_mutex::lock. The stack cannot see find due to
compile optimization.
The code is like this:
namespace BOOSTIP = ::boost::interprocess;
typedef struct _CACHE_ITEM
{
BOOSTIP::offset_ptr<BYTE> CacheValue;
ULONG CacheLength;
ULONG CacheMaxLength;
volatile BOOL CacheDirty;
_CACHE_ITEM()
{
CacheValue = 0;
CacheLength = 0;
CacheMaxLength = 0;
CacheDirty = FALSE;
}
} CACHE_ITEM, *PCACHE_ITEM;
BOOL
CConfigCache::Read(__in LPCTSTR lpszName,
__out PVOID lpValue,
__in DWORD dwSize,
__out_opt PDWORD dwRetSize /*= NULL */)
{
try
{
if (CanIAccessCache())
{
CScopeGuard<CMutex> guard(m_FunctionLock);
//
// ....... ignore some useless code
//
PCACHE_ITEM CacheItem = m_SharedMemory.find
El 02/11/2011 8:00, nevergone . escribió:
Hello,
I'm using boost::interprocess to share config information between processes on windows platform. It random crash on custom pc. I only have a minidump dump, here is the stack output by windbg:
It's hard to say, but using experimental detail classes ("emulation_recursive_mutex") is not supported. They are ongoin experiments.
Ion ______________________________**_________________ Boost-users mailing list Boost-users@lists.boost.org http://lists.boost.org/**mailman/listinfo.cgi/boost-**usershttp://lists.boost.org/mailman/listinfo.cgi/boost-users