I am newbie in boost. I am trying to use shared memory to communicate between processes using boost.
It works perfectly on my windows using vs2010 with 4 processes sharing memory with a manager. The manager initiates the shared memory mechanism before the other processes are launched.
However, I am getting an interprocess_exception
on Ubuntu 14 running inside VirtualBox. I am using boost 1.58 and intel compiler. Same code works on windows using vs2010.
struct shm_remove
{
shm_remove() { shared_memory_object::remove("MySharedMemory1"); }
~shm_remove() { shared_memory_object::remove("MySharedMemory1"); }
} cleaner;
// exception occurs in the next line
managed_shared_memory sharedMemSegment = managed_shared_memory(boost::interprocess::create_only, "MySharedMemory1", 65536);
exact error : "terminate called after throwing an instance of 'boost::interprocess::interprocess_exception' what(): No such file or directory
Changing to boost::interprocess::open_or_create
did not work.
Help is much appreciated.