Remove usage of rtc::MessageHandler in peer_connection example

Bug: webrtc:9702
Change-Id: I2d688461858d9b6f06a0f7928f3cff7c6a7b7db9
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/272080
Auto-Submit: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#37813}
diff --git a/examples/peerconnection/client/peer_connection_client.cc b/examples/peerconnection/client/peer_connection_client.cc
index c0de4ff..2746752 100644
--- a/examples/peerconnection/client/peer_connection_client.cc
+++ b/examples/peerconnection/client/peer_connection_client.cc
@@ -10,6 +10,7 @@
 
 #include "examples/peerconnection/client/peer_connection_client.h"
 
+#include "api/units/time_delta.h"
 #include "examples/peerconnection/client/defaults.h"
 #include "rtc_base/checks.h"
 #include "rtc_base/logging.h"
@@ -18,9 +19,9 @@
 namespace {
 
 // This is our magical hangup signal.
-const char kByeMessage[] = "BYE";
+constexpr char kByeMessage[] = "BYE";
 // Delay between server connection retries, in milliseconds
-const int kReconnectDelay = 2000;
+constexpr webrtc::TimeDelta kReconnectDelay = webrtc::TimeDelta::Seconds(2);
 
 rtc::Socket* CreateClientSocket(int family) {
   rtc::Thread* thread = rtc::Thread::Current();
@@ -33,9 +34,7 @@
 PeerConnectionClient::PeerConnectionClient()
     : callback_(NULL), resolver_(NULL), state_(NOT_CONNECTED), my_id_(-1) {}
 
-PeerConnectionClient::~PeerConnectionClient() {
-  rtc::Thread::Current()->Clear(this);
-}
+PeerConnectionClient::~PeerConnectionClient() = default;
 
 void PeerConnectionClient::InitSocketSignals() {
   RTC_DCHECK(control_socket_.get() != NULL);
@@ -480,16 +479,11 @@
   } else {
     if (socket == control_socket_.get()) {
       RTC_LOG(LS_WARNING) << "Connection refused; retrying in 2 seconds";
-      rtc::Thread::Current()->PostDelayed(RTC_FROM_HERE, kReconnectDelay, this,
-                                          0);
+      rtc::Thread::Current()->PostDelayedTask(
+          SafeTask(safety_.flag(), [this] { DoConnect(); }), kReconnectDelay);
     } else {
       Close();
       callback_->OnDisconnected();
     }
   }
 }
-
-void PeerConnectionClient::OnMessage(rtc::Message* msg) {
-  // ignore msg; there is currently only one supported message ("retry")
-  DoConnect();
-}