Quote Originally Posted by kmdv View Post
There is none of those which I am used to (GCC is experimental for example) thus I consider it more portable for myself atm.
So you are using some compiler that is not Visual C++ or GCC?

Map is placed in a DLL which is used by other DLLs exclusively (if it matters?)
DLL exports make things slightly more complicated, but the basic idea would be the same. You just have to make sure that the pointers are valid as long as the threads use them because they cannot keep the pointers alive with this idea.

I decided to stick to this idea, but with another class and lock that can be used also to modify, so shared_ptr can be faster and for local thread usage only:
So what is the point of the class? All I see is a wrapper that uses manual ref counting.