Opened 15 years ago
Closed 14 years ago
#1390 closed Bugs (fixed)
Interpocess: managed shared memory failing completely under OS X
Reported by: | Owned by: | Ion Gaztañaga | |
---|---|---|---|
Milestone: | Boost 1.39.0 | Component: | interprocess |
Version: | Boost Development Trunk | Severity: | Showstopper |
Keywords: | interprocess shared memory osx | Cc: |
Description
I haven't got the details with me now but simply trying to build and run the managed shared memory test under os x fails upon run atm.
Seems like there might be an initialised internal mutex.
Take a look or get back to me if you need more info.
Attachments (1)
Change History (3)
by , 14 years ago
comment:1 by , 14 years ago
I believe that I have encountered the same problem, and have a test case that consistently demonstrates the bug. I have attached the code as "Test.cpp". If you compile and run this program as-is, it will consistently fail with a bus-error, assertion failure, or infinite loop.
If you compile the test program with -DEXTRA_MUTEX, the code wraps the managed_shared_memory calls with an extra scoped_lock<named_mutex>. This works around the bug, so it certainly seems that the internal mutex in the managed_shared_memory class is being ineffective.
My computer is a PowerBook G4 running Mac OS X Leopard 10.5.3. The compiler is powerpc-apple-darwin9-gcc-4.0.1 (GCC) 4.0.1 (Apple Inc. build 5465). I have not tried my test case on other platforms.
comment:2 by , 14 years ago
Milestone: | To Be Determined → Boost 1.39.0 |
---|---|
Resolution: | → fixed |
Status: | new → closed |
Modified inteprocess mutex emulation in UNIX systems. Revision 51971.
Code to reproduce this bug