Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Unified Diff: webrtc/video_engine/vie_channel.cc

Issue 1476453002: Clean up PlatformThread. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: IsRunning DCHECK Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: webrtc/video_engine/vie_channel.cc
diff --git a/webrtc/video_engine/vie_channel.cc b/webrtc/video_engine/vie_channel.cc
index 91c862b64290b1805491c4d51af5841ab96bd93c..b17b6ce51737788dcf87ede0ce1a5d6136992457 100644
--- a/webrtc/video_engine/vie_channel.cc
+++ b/webrtc/video_engine/vie_channel.cc
@@ -111,6 +111,7 @@ ViEChannel::ViEChannel(uint32_t number_of_cores,
packet_router_(packet_router),
bandwidth_observer_(bandwidth_observer),
transport_feedback_observer_(transport_feedback_observer),
+ decode_thread_(ChannelDecodeThreadFunction, this, "DecodingThread"),
nack_history_size_sender_(kMinSendSidePacketHistorySize),
max_nack_reordering_threshold_(kMaxPacketAgeToNack),
pre_render_callback_(NULL),
@@ -186,9 +187,7 @@ ViEChannel::~ViEChannel() {
module_process_thread_->DeRegisterModule(rtp_rtcp);
delete rtp_rtcp;
}
- if (decode_thread_) {
- StopDecodeThread();
- }
+ StopDecodeThread();
// Release modules.
VideoCodingModule::Destroy(vcm_);
}
@@ -1148,23 +1147,17 @@ std::vector<RtpRtcp*> ViEChannel::CreateRtpRtcpModules(
void ViEChannel::StartDecodeThread() {
RTC_DCHECK(!sender_);
- // Start the decode thread
- if (decode_thread_)
+ if (decode_thread_.IsRunning())
return;
- decode_thread_ = PlatformThread::CreateThread(ChannelDecodeThreadFunction,
- this, "DecodingThread");
- decode_thread_->Start();
- decode_thread_->SetPriority(kHighestPriority);
+ // Start the decode thread
+ decode_thread_.Start();
+ decode_thread_.SetPriority(rtc::kHighestPriority);
}
void ViEChannel::StopDecodeThread() {
- if (!decode_thread_)
- return;
-
vcm_->TriggerDecoderShutdown();
- decode_thread_->Stop();
- decode_thread_.reset();
+ decode_thread_.Stop();
}
int32_t ViEChannel::SetVoiceChannel(int32_t ve_channel_id,
« no previous file with comments | « webrtc/video_engine/vie_channel.h ('k') | webrtc/voice_engine/test/android/android_test/jni/android_test.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698