Boost logo

Boost Users :

Subject: [Boost-users] thread safety of shared_ptr
From: Yuanlong Shao (shaoyl85_at_[hidden])
Date: 2012-04-17 21:21:16


Hi all,

If I do the following
----------------------------------------------------------------------------------------------------------
shared_ptr<int> pA( new int(1) );
shared_ptr<int> pB( new int(2) );
shared_ptr<int> pNew( new int(3) );

// thread A
pA = pB;

// thread B
pB = pNew;
----------------------------------------------------------------------------------------------------------

I know that whether pA will be int(2) or int(3) after execution is
undefined, but if I do want to do this no matter what value of
pA I get, will this cause atomicity problem? I mean, thread A
increases counter for int(2), but thread B decrease it, is this
thread safe?

Yuanlong Shao


Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net