Making interprocess::message_queue use Windows_shared_memory instead of shared_memory_object
Hi, I am trying to make boost::interprocess::message_queue to use windows_shared_memory, instead of shared_memory_object. I have made the below changes to boost version 1.65.1 1) In ipc\message_queue.hpp, included windows_shared_memory.hpp instead of shared_memory_object.hpp 2) Changed typedef ipcdetail::managed_open_or_create_impl<shared_memory_object, 0, true, false> open_create_impl_t; to typedef ipcdetail::managed_open_or_create_impl<windows_shared_memory, 0, false, false> open_create_impl_t; 3) Changed the below in mq_hdr_t:: typedef ipcdetail::managed_open_or_create_impl<shared_memory_object, 0, true, false> open_create_impl_t; to typedef ipcdetail::managed_open_or_create_impl<windows_shared_memory, 0, false, false> open_create_impl_t; 4) Changed inline bool message_queue_t<VoidPointer>::remove(const char *name) { return shared_memory_object::remove(name); } to inline bool message_queue_t<VoidPointer>::remove(const char *name) { return true; } 5)Changed the below in detail\managed_open_or_create_impl.hpp template<bool dummy> static void truncate_device(DeviceAbstraction &dev, offset_t size, true_) { dev.truncate(size); } to template<bool dummy> static void truncate_device(DeviceAbstraction &dev, offset_t size, true_) { } After the above changes, no file is getting created and everything seems to work. Is there something else i should care about? Regards, Gaurav.
participants (1)
-
Gaurav Sehgal