bpo-35283: Add deprecation warning for Thread.isAlive (GH-11454)

Add a deprecated warning for the threading.Thread.isAlive() method.
This commit is contained in:
Dong-hee Na 2019-01-17 21:14:45 +09:00 committed by Victor Stinner
parent 97e12996f3
commit 89669ffe10
5 changed files with 17 additions and 4 deletions

View File

@ -394,6 +394,8 @@ Deprecated
(Contributed by Serhiy Storchaka in :issue:`33710`.)
* The :meth:`~threading.Thread.isAlive()` method of :class:`threading.Thread` has been deprecated.
(Contributed by Dong-hee Na in :issue:`35283`.)
API and Feature Removals
========================

View File

@ -2264,14 +2264,14 @@ def start_threads(threads, unlock=None):
endtime += 60
for t in started:
t.join(max(endtime - time.monotonic(), 0.01))
started = [t for t in started if t.isAlive()]
started = [t for t in started if t.is_alive()]
if not started:
break
if verbose:
print('Unable to join %d threads during a period of '
'%d minutes' % (len(started), timeout))
finally:
started = [t for t in started if t.isAlive()]
started = [t for t in started if t.is_alive()]
if started:
faulthandler.dump_traceback(sys.stdout)
raise AssertionError('Unable to join %d threads' % len(started))

View File

@ -415,7 +415,8 @@ class ThreadTests(BaseTestCase):
t.setDaemon(True)
t.getName()
t.setName("name")
t.isAlive()
with self.assertWarnsRegex(DeprecationWarning, 'use is_alive()'):
t.isAlive()
e = threading.Event()
e.isSet()
threading.activeCount()

View File

@ -1091,7 +1091,15 @@ class Thread:
self._wait_for_tstate_lock(False)
return not self._is_stopped
isAlive = is_alive
def isAlive(self):
"""Return whether the thread is alive.
This method is deprecated, use is_alive() instead.
"""
import warnings
warnings.warn('isAlive() is deprecated, use is_alive() instead',
DeprecationWarning, stacklevel=2)
return self.is_alive()
@property
def daemon(self):

View File

@ -0,0 +1,2 @@
Add a deprecated warning for the :meth:`threading.Thread.isAlive` method.
Patch by Dong-hee Na.