aboutsummaryrefslogtreecommitdiff
path: root/media/sctp
diff options
context:
space:
mode:
authorNiels Möller <nisse@webrtc.org>2021-04-15 11:42:50 +0200
committerCommit Bot <commit-bot@chromium.org>2021-04-15 10:35:30 +0000
commitaffd2196a921da900d1cf8a1132c2bb571264512 (patch)
treef839c72bb53e391ed677af907a5435ee9b492565 /media/sctp
parentbc959b61b37e336c950ecbe02d2d8d3e943ba425 (diff)
downloadwebrtc-affd2196a921da900d1cf8a1132c2bb571264512.tar.gz
Delete AsyncInvoker usage from SimulatedPacketTransport
Bug: webrtc:12339 Change-Id: Ic293f9c8791ec24025f9eac39cbc4fcf2583d3ea Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/212867 Commit-Queue: Niels Moller <nisse@webrtc.org> Reviewed-by: Taylor <deadbeef@webrtc.org> Cr-Commit-Position: refs/heads/master@{#33741}
Diffstat (limited to 'media/sctp')
-rw-r--r--media/sctp/usrsctp_transport_reliability_unittest.cc33
1 files changed, 12 insertions, 21 deletions
diff --git a/media/sctp/usrsctp_transport_reliability_unittest.cc b/media/sctp/usrsctp_transport_reliability_unittest.cc
index 98f04a409a..ddc8419a11 100644
--- a/media/sctp/usrsctp_transport_reliability_unittest.cc
+++ b/media/sctp/usrsctp_transport_reliability_unittest.cc
@@ -13,8 +13,8 @@
#include "media/sctp/sctp_transport_internal.h"
#include "media/sctp/usrsctp_transport.h"
-#include "rtc_base/async_invoker.h"
#include "rtc_base/copy_on_write_buffer.h"
+#include "rtc_base/event.h"
#include "rtc_base/gunit.h"
#include "rtc_base/logging.h"
#include "rtc_base/random.h"
@@ -54,11 +54,6 @@ class SimulatedPacketTransport final : public rtc::PacketTransportInternal {
~SimulatedPacketTransport() override {
RTC_DCHECK_RUN_ON(transport_thread_);
- auto destination = destination_.load();
- if (destination != nullptr) {
- invoker_.Flush(destination->transport_thread_);
- }
- invoker_.Flush(transport_thread_);
destination_ = nullptr;
SignalWritableState(this);
}
@@ -83,15 +78,13 @@ class SimulatedPacketTransport final : public rtc::PacketTransportInternal {
return 0;
}
rtc::CopyOnWriteBuffer buffer(data, len);
- auto send_job = [this, flags, buffer = std::move(buffer)] {
- auto destination = destination_.load();
- if (destination == nullptr) {
- return;
- }
- destination->SignalReadPacket(
- destination, reinterpret_cast<const char*>(buffer.data()),
- buffer.size(), rtc::Time(), flags);
- };
+ auto send_task = ToQueuedTask(
+ destination->task_safety_.flag(),
+ [destination, flags, buffer = std::move(buffer)] {
+ destination->SignalReadPacket(
+ destination, reinterpret_cast<const char*>(buffer.data()),
+ buffer.size(), rtc::Time(), flags);
+ });
// Introduce random send delay in range [0 .. 2 * avg_send_delay_millis_]
// millis, which will also work as random packet reordering mechanism.
uint16_t actual_send_delay = avg_send_delay_millis_;
@@ -101,12 +94,10 @@ class SimulatedPacketTransport final : public rtc::PacketTransportInternal {
actual_send_delay += reorder_delay;
if (actual_send_delay > 0) {
- invoker_.AsyncInvokeDelayed<void>(RTC_FROM_HERE,
- destination->transport_thread_,
- std::move(send_job), actual_send_delay);
+ destination->transport_thread_->PostDelayedTask(std::move(send_task),
+ actual_send_delay);
} else {
- invoker_.AsyncInvoke<void>(RTC_FROM_HERE, destination->transport_thread_,
- std::move(send_job));
+ destination->transport_thread_->PostTask(std::move(send_task));
}
return 0;
}
@@ -136,8 +127,8 @@ class SimulatedPacketTransport final : public rtc::PacketTransportInternal {
const uint8_t packet_loss_percents_;
const uint16_t avg_send_delay_millis_;
std::atomic<SimulatedPacketTransport*> destination_ ATOMIC_VAR_INIT(nullptr);
- rtc::AsyncInvoker invoker_;
webrtc::Random random_;
+ webrtc::ScopedTaskSafety task_safety_;
RTC_DISALLOW_COPY_AND_ASSIGN(SimulatedPacketTransport);
};