Index: webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
diff --git a/webrtc/modules/congestion_controller/transport_feedback_adapter.cc b/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
index fa27cc0b18ff7c054bfc0656bd14b2c0d9a16d5a..55b23e5959ba14399caf86585a98b274b6c5b0d7 100644 |
--- a/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
+++ b/webrtc/modules/congestion_controller/transport_feedback_adapter.cc |
@@ -54,11 +54,17 @@ TransportFeedbackAdapter::TransportFeedbackAdapter( |
clock_(clock), |
current_offset_ms_(kNoTimestamp), |
last_timestamp_us_(kNoTimestamp), |
- bitrate_controller_(bitrate_controller) {} |
+ bitrate_controller_(bitrate_controller) { |
+ packetizer_thread_checker_.DetachFromThread(); |
+ module_process_thread_checker_.DetachFromThread(); |
+} |
-TransportFeedbackAdapter::~TransportFeedbackAdapter() {} |
+TransportFeedbackAdapter::~TransportFeedbackAdapter() { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
+} |
void TransportFeedbackAdapter::InitBwe() { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
rtc::CritScope cs(&bwe_lock_); |
delay_based_bwe_.reset(new DelayBasedBwe(event_log_, clock_)); |
} |
@@ -66,6 +72,7 @@ void TransportFeedbackAdapter::InitBwe() { |
void TransportFeedbackAdapter::AddPacket(uint16_t sequence_number, |
size_t length, |
const PacedPacketInfo& pacing_info) { |
+ RTC_DCHECK(packetizer_thread_checker_.CalledOnValidThread()); |
stefan-webrtc
2017/02/24 14:48:53
Maybe the value of this is small? WDYT?
elad.alon_webrtc.org
2017/02/27 10:55:30
Hard for me to say. It does make sure no one ever
|
rtc::CritScope cs(&lock_); |
if (send_side_bwe_with_overhead_) { |
length += transport_overhead_bytes_per_packet_; |
@@ -75,16 +82,19 @@ void TransportFeedbackAdapter::AddPacket(uint16_t sequence_number, |
void TransportFeedbackAdapter::OnSentPacket(uint16_t sequence_number, |
int64_t send_time_ms) { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
rtc::CritScope cs(&lock_); |
send_time_history_.OnSentPacket(sequence_number, send_time_ms); |
} |
void TransportFeedbackAdapter::SetStartBitrate(int start_bitrate_bps) { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
rtc::CritScope cs(&bwe_lock_); |
delay_based_bwe_->SetStartBitrate(start_bitrate_bps); |
} |
void TransportFeedbackAdapter::SetMinBitrate(int min_bitrate_bps) { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
rtc::CritScope cs(&bwe_lock_); |
delay_based_bwe_->SetMinBitrate(min_bitrate_bps); |
} |
@@ -102,6 +112,7 @@ int64_t TransportFeedbackAdapter::GetProbingIntervalMs() const { |
std::vector<PacketInfo> TransportFeedbackAdapter::GetPacketFeedbackVector( |
const rtcp::TransportFeedback& feedback) { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
int64_t timestamp_us = feedback.GetBaseTimeUs(); |
// Add timestamp deltas to a local time base selected on first packet arrival. |
// This won't be the true time base, but makes it easier to manually inspect |
@@ -155,6 +166,7 @@ std::vector<PacketInfo> TransportFeedbackAdapter::GetPacketFeedbackVector( |
void TransportFeedbackAdapter::OnTransportFeedback( |
const rtcp::TransportFeedback& feedback) { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
last_packet_feedback_vector_ = GetPacketFeedbackVector(feedback); |
DelayBasedBwe::Result result; |
{ |
@@ -168,11 +180,13 @@ void TransportFeedbackAdapter::OnTransportFeedback( |
std::vector<PacketInfo> TransportFeedbackAdapter::GetTransportFeedbackVector() |
const { |
+ RTC_DCHECK(worker_thread_checker_.CalledOnValidThread()); |
return last_packet_feedback_vector_; |
} |
void TransportFeedbackAdapter::OnRttUpdate(int64_t avg_rtt_ms, |
int64_t max_rtt_ms) { |
+ RTC_DCHECK(module_process_thread_checker_.CalledOnValidThread()); |
rtc::CritScope cs(&bwe_lock_); |
delay_based_bwe_->OnRttUpdate(avg_rtt_ms, max_rtt_ms); |
} |