bpo-38951: Use threading.main_thread() check in asyncio (GH-17433)
https://bugs.python.org/issue38951
diff --git a/Lib/asyncio/events.py b/Lib/asyncio/events.py
index 36b7ea3..c7343f5 100644
--- a/Lib/asyncio/events.py
+++ b/Lib/asyncio/events.py
@@ -636,7 +636,7 @@
"""
if (self._local._loop is None and
not self._local._set_called and
- isinstance(threading.current_thread(), threading._MainThread)):
+ threading.current_thread() is threading.main_thread()):
self.set_event_loop(self.new_event_loop())
if self._local._loop is None:
diff --git a/Lib/asyncio/unix_events.py b/Lib/asyncio/unix_events.py
index 632546a..97198ea 100644
--- a/Lib/asyncio/unix_events.py
+++ b/Lib/asyncio/unix_events.py
@@ -1406,8 +1406,7 @@
with events._lock:
if self._watcher is None: # pragma: no branch
self._watcher = ThreadedChildWatcher()
- if isinstance(threading.current_thread(),
- threading._MainThread):
+ if threading.current_thread() is threading.main_thread():
self._watcher.attach_loop(self._local._loop)
def set_event_loop(self, loop):
@@ -1421,7 +1420,7 @@
super().set_event_loop(loop)
if (self._watcher is not None and
- isinstance(threading.current_thread(), threading._MainThread)):
+ threading.current_thread() is threading.main_thread()):
self._watcher.attach_loop(loop)
def get_child_watcher(self):