Remove unnecessary sequence checker.

Just use the task queue it represents instead.
Also rename the accessor to not confuse it with the 'network thread'.

Bug: none
Change-Id: Ic6c61652768ca3ff60dc0a2acc4850350feeb98e
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/176226
Reviewed-by: Philip Eliasson <philipel@webrtc.org>
Commit-Queue: Tommi <tommi@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#31375}
This commit is contained in:
Tommi 2020-05-28 09:01:41 +02:00 committed by Commit Bot
parent 4f7531e368
commit 8edfe6e667

View file

@ -264,7 +264,7 @@ class Call final : public webrtc::Call,
void RegisterRateObserver(); void RegisterRateObserver();
rtc::TaskQueue* network_queue() const { rtc::TaskQueue* send_transport_queue() const {
return transport_send_ptr_->GetWorkerQueue(); return transport_send_ptr_->GetWorkerQueue();
} }
@ -277,7 +277,6 @@ class Call final : public webrtc::Call,
const std::unique_ptr<CallStats> call_stats_; const std::unique_ptr<CallStats> call_stats_;
const std::unique_ptr<BitrateAllocator> bitrate_allocator_; const std::unique_ptr<BitrateAllocator> bitrate_allocator_;
Call::Config config_; Call::Config config_;
SequenceChecker network_sequence_checker_;
NetworkState audio_network_state_; NetworkState audio_network_state_;
NetworkState video_network_state_; NetworkState video_network_state_;
@ -577,7 +576,6 @@ Call::Call(Clock* clock,
RTC_DCHECK(config.event_log != nullptr); RTC_DCHECK(config.event_log != nullptr);
RTC_DCHECK(config.trials != nullptr); RTC_DCHECK(config.trials != nullptr);
RTC_DCHECK(worker_thread_->IsCurrent()); RTC_DCHECK(worker_thread_->IsCurrent());
network_sequence_checker_.Detach();
call_stats_->RegisterStatsObserver(&receive_side_cc_); call_stats_->RegisterStatsObserver(&receive_side_cc_);
@ -1033,14 +1031,6 @@ RtpTransportControllerSendInterface* Call::GetTransportControllerSend() {
Call::Stats Call::GetStats() const { Call::Stats Call::GetStats() const {
RTC_DCHECK_RUN_ON(worker_thread_); RTC_DCHECK_RUN_ON(worker_thread_);
// TODO(tommi): The following stats are managed on the process thread:
// - pacer_delay_ms (PacedSender::Process)
// - rtt_ms
// - recv_bandwidth_bps
// These are delivered on the network TQ:
// - send_bandwidth_bps (see OnTargetTransferRate)
// - max_padding_bitrate_bps (see OnAllocationLimitsChanged)
Stats stats; Stats stats;
// TODO(srte): It is unclear if we only want to report queues if network is // TODO(srte): It is unclear if we only want to report queues if network is
// available. // available.
@ -1122,13 +1112,12 @@ void Call::OnSentPacket(const rtc::SentPacket& sent_packet) {
} }
void Call::OnStartRateUpdate(DataRate start_rate) { void Call::OnStartRateUpdate(DataRate start_rate) {
RTC_DCHECK(network_queue()->IsCurrent()); RTC_DCHECK_RUN_ON(send_transport_queue());
bitrate_allocator_->UpdateStartRate(start_rate.bps<uint32_t>()); bitrate_allocator_->UpdateStartRate(start_rate.bps<uint32_t>());
} }
void Call::OnTargetTransferRate(TargetTransferRate msg) { void Call::OnTargetTransferRate(TargetTransferRate msg) {
RTC_DCHECK(network_queue()->IsCurrent()); RTC_DCHECK_RUN_ON(send_transport_queue());
RTC_DCHECK_RUN_ON(&network_sequence_checker_);
uint32_t target_bitrate_bps = msg.target_rate.bps(); uint32_t target_bitrate_bps = msg.target_rate.bps();
// For controlling the rate of feedback messages. // For controlling the rate of feedback messages.
@ -1158,8 +1147,7 @@ void Call::OnTargetTransferRate(TargetTransferRate msg) {
} }
void Call::OnAllocationLimitsChanged(BitrateAllocationLimits limits) { void Call::OnAllocationLimitsChanged(BitrateAllocationLimits limits) {
RTC_DCHECK(network_queue()->IsCurrent()); RTC_DCHECK_RUN_ON(send_transport_queue());
RTC_DCHECK_RUN_ON(&network_sequence_checker_);
transport_send_ptr_->SetAllocatedSendBitrateLimits(limits); transport_send_ptr_->SetAllocatedSendBitrateLimits(limits);
@ -1350,6 +1338,7 @@ PacketReceiver::DeliveryStatus Call::DeliverPacket(
rtc::CopyOnWriteBuffer packet, rtc::CopyOnWriteBuffer packet,
int64_t packet_time_us) { int64_t packet_time_us) {
RTC_DCHECK_RUN_ON(worker_thread_); RTC_DCHECK_RUN_ON(worker_thread_);
if (IsRtcp(packet.cdata(), packet.size())) if (IsRtcp(packet.cdata(), packet.size()))
return DeliverRtcp(media_type, packet.cdata(), packet.size()); return DeliverRtcp(media_type, packet.cdata(), packet.size());