Re: [Boost-bugs] [Boost C++ Libraries] #5230: Interprocess shared memory between 32 and 64 bit processes

Subject: Re: [Boost-bugs] [Boost C++ Libraries] #5230: Interprocess shared memory between 32 and 64 bit processes
From: Boost C++ Libraries (noreply_at_[hidden])
Date: 2011-03-28 03:27:18

#5230: Interprocess shared memory between 32 and 64 bit processes
  Reporter: tgermer@… | Owner: igaztanaga
      Type: Feature Requests | Status: new
 Milestone: To Be Determined | Component: interprocess
   Version: Boost Development Trunk | Severity: Problem
Resolution: | Keywords: shared memory 32 64 bit

Comment (by xijing dai <dxj19831029@…>):

 Replying to [comment:9 xijing dai <dxj19831029@…>]:
> Replying to [comment:8 tgermer@…]:
> > Replying to [comment:7 xijing dai <dxj19831029@…>]:
> > > I am currently on version 1.46.1
> > > I would like to get this patch and have a go, is that possible?
> > > where can i get the patch?
> > > do i need to upgrade all my boost libs to trunk head in order to use
> >
> > I'm also on 1.46.1. You just have to update boost/interprocess,
 boost/intrusive and boost/move (which is new) to the trunk version in
 order to use it. No need to update anything else yet. Currently there is
 one open issue to make it work: the namespace conflict. If you want to
 resolve it manually, you need to remove the comment from "union
 internal_type" in boost/interprocess/offset_ptr.hpp. Then you have to
 replace every "detail::" with "::boost::detail::" in aligned_storage.hpp
 (the patch that I suggested in comment 4 and also on the mailing list).
> First all, thanks to this patch, whoever did it, I really appreciate
 their work, it helps me a lot.
> I tested in my application, it works great. testing includes:
> * windows_shared_memory
> * message queue
> * managed_windows_shared_memory
> ** create named item
> ** raw allocate
> By the way, I didn't change anything relating to the namespace issue, it
 passed compiling and worked great.

 Interesting, I am not sure if I had wrong testing last week, or I did
 something wrong this week.

 This week, the program doesn't work properly between 32/64

 I do a little trace, when i allocate 1000000 bytes, it said free memory
 is: 999912, in 32bit.
 in 64 bit, it is: 999848.

 For me, it looks like something wrong in: rbtree_best_fit, since when i
 trace from get_free_memory method, it gives different values, so I assume
 there is some setting wrong for that class.

 by the way, I do uncomment union internal_type section, and I didn't
 change "detail::" stuff inside aligned_storage.hpp, is that a problem?

 Do you have any idea what's going on here?


Ticket URL: <>
Boost C++ Libraries <>
Boost provides free peer-reviewed portable C++ source libraries.

This archive was generated by hypermail 2.1.7 : 2017-02-16 18:50:06 UTC