Propogate network-worker thread split to api

BUG=webrtc:5645

Review-Url: https://codereview.webrtc.org/1968393002
Cr-Original-Commit-Position: refs/heads/master@{#12767}
Cr-Mirrored-From: https://chromium.googlesource.com/external/webrtc
Cr-Mirrored-Commit: e9021a3601eff3e33a103ae35fb866554ee28747
diff --git a/app/webrtc/objc/RTCPeerConnectionFactory.mm b/app/webrtc/objc/RTCPeerConnectionFactory.mm
index 6639797..c156df7 100644
--- a/app/webrtc/objc/RTCPeerConnectionFactory.mm
+++ b/app/webrtc/objc/RTCPeerConnectionFactory.mm
@@ -55,8 +55,9 @@
 #include "webrtc/base/ssladapter.h"
 
 @implementation RTCPeerConnectionFactory {
-  std::unique_ptr<rtc::Thread> _signalingThread;
+  std::unique_ptr<rtc::Thread> _networkThread;
   std::unique_ptr<rtc::Thread> _workerThread;
+  std::unique_ptr<rtc::Thread> _signalingThread;
 }
 
 @synthesize nativeFactory = _nativeFactory;
@@ -73,15 +74,21 @@
 
 - (id)init {
   if ((self = [super init])) {
-    _signalingThread.reset(new rtc::Thread());
-    BOOL result = _signalingThread->Start();
-    NSAssert(result, @"Failed to start signaling thread.");
-    _workerThread.reset(new rtc::Thread());
+    _networkThread = rtc::Thread::CreateWithSocketServer();
+    BOOL result = _networkThread->Start();
+    NSAssert(result, @"Failed to start network thread.");
+
+    _workerThread = rtc::Thread::Create();
     result = _workerThread->Start();
     NSAssert(result, @"Failed to start worker thread.");
 
+    _signalingThread = rtc::Thread::Create();
+    result = _signalingThread->Start();
+    NSAssert(result, @"Failed to start signaling thread.");
+
     _nativeFactory = webrtc::CreatePeerConnectionFactory(
-        _signalingThread.get(), _workerThread.get(), nullptr, nullptr, nullptr);
+        _networkThread.get(), _workerThread.get(), _signalingThread.get(),
+        nullptr, nullptr, nullptr);
     NSAssert(_nativeFactory, @"Failed to initialize PeerConnectionFactory!");
     // Uncomment to get sensitive logs emitted (to stderr or logcat).
     // rtc::LogMessage::LogToDebug(rtc::LS_SENSITIVE);