Create rtc::AtomicInt POD struct.

Prevents accidental non-atomic reads, increments and stores since
"volatile int" doesn't enforce atomic usage.

BUG=
R=kwiberg@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1420043008

Cr-Commit-Position: refs/heads/master@{#10657}
This commit is contained in:
pbos
2015-11-16 11:03:04 -08:00
committed by Commit bot
parent 3528a27b1b
commit b27f590ece
12 changed files with 191 additions and 104 deletions

View File

@ -13,6 +13,7 @@
#include <list>
#include "webrtc/base/atomicops.h"
#include "webrtc/base/constructormagic.h"
#include "webrtc/base/criticalsection.h"
#include "webrtc/base/scoped_ptr.h"
@ -58,7 +59,7 @@ class PacketRouter : public PacedSender::Callback,
// Map from ssrc to sending rtp module.
std::list<RtpRtcp*> rtp_modules_ GUARDED_BY(modules_lock_);
volatile int transport_seq_;
rtc::AtomicInt transport_seq_;
RTC_DISALLOW_COPY_AND_ASSIGN(PacketRouter);
};