Delete use of AsyncInvoker from PeerConnectionIntegrationWrapper

Bug: webrtc:12339
Change-Id: Ie76b2f4af9953579a24e2cf3f0f8833dc0d7999c
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/211354
Reviewed-by: Taylor <deadbeef@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33456}
diff --git a/pc/BUILD.gn b/pc/BUILD.gn
index 619c2d2..402c364 100644
--- a/pc/BUILD.gn
+++ b/pc/BUILD.gn
@@ -1249,6 +1249,8 @@
       "../rtc_base:threading",
       "../rtc_base:timeutils",
       "../rtc_base/synchronization:mutex",
+      "../rtc_base/task_utils:pending_task_safety_flag",
+      "../rtc_base/task_utils:to_queued_task",
       "../rtc_base/third_party/base64",
       "../rtc_base/third_party/sigslot",
       "../system_wrappers:metrics",
diff --git a/pc/test/integration_test_helpers.h b/pc/test/integration_test_helpers.h
index 85d2f34..66b7d3f 100644
--- a/pc/test/integration_test_helpers.h
+++ b/pc/test/integration_test_helpers.h
@@ -93,7 +93,6 @@
 #include "pc/test/fake_video_track_renderer.h"
 #include "pc/test/mock_peer_connection_observers.h"
 #include "pc/video_track_source.h"
-#include "rtc_base/async_invoker.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/fake_clock.h"
 #include "rtc_base/fake_mdns_responder.h"
@@ -110,6 +109,8 @@
 #include "rtc_base/rtc_certificate_generator.h"
 #include "rtc_base/socket_address.h"
 #include "rtc_base/ssl_stream_adapter.h"
+#include "rtc_base/task_utils/pending_task_safety_flag.h"
+#include "rtc_base/task_utils/to_queued_task.h"
 #include "rtc_base/test_certificate_verifier.h"
 #include "rtc_base/thread.h"
 #include "rtc_base/time_utils.h"
@@ -958,9 +959,11 @@
     if (signaling_delay_ms_ == 0) {
       RelaySdpMessageIfReceiverExists(type, msg);
     } else {
-      invoker_.AsyncInvokeDelayed<void>(
-          RTC_FROM_HERE, rtc::Thread::Current(),
-          [this, type, msg] { RelaySdpMessageIfReceiverExists(type, msg); },
+      rtc::Thread::Current()->PostDelayedTask(
+          ToQueuedTask(task_safety_.flag(),
+                       [this, type, msg] {
+                         RelaySdpMessageIfReceiverExists(type, msg);
+                       }),
           signaling_delay_ms_);
     }
   }
@@ -979,11 +982,12 @@
     if (signaling_delay_ms_ == 0) {
       RelayIceMessageIfReceiverExists(sdp_mid, sdp_mline_index, msg);
     } else {
-      invoker_.AsyncInvokeDelayed<void>(
-          RTC_FROM_HERE, rtc::Thread::Current(),
-          [this, sdp_mid, sdp_mline_index, msg] {
-            RelayIceMessageIfReceiverExists(sdp_mid, sdp_mline_index, msg);
-          },
+      rtc::Thread::Current()->PostDelayedTask(
+          ToQueuedTask(task_safety_.flag(),
+                       [this, sdp_mid, sdp_mline_index, msg] {
+                         RelayIceMessageIfReceiverExists(sdp_mid,
+                                                         sdp_mline_index, msg);
+                       }),
           signaling_delay_ms_);
     }
   }
@@ -1179,7 +1183,7 @@
   std::string rtp_stats_id_;
   std::string audio_track_stats_id_;
 
-  rtc::AsyncInvoker invoker_;
+  ScopedTaskSafety task_safety_;
 
   friend class PeerConnectionIntegrationBaseTest;
 };