summaryrefslogtreecommitdiffstats
path: root/Lib/test/test_threading.py
Commit message (Collapse)AuthorAgeFilesLines
* bpo-31516: current_thread() should not return a dummy thread at shutdown (#3673)Antoine Pitrou2017-10-021-0/+29
| | | | bpo-31516: current_thread() should not return a dummy thread at shutdown
* bpo-31234: Join timers in test_threading (#3598)Victor Stinner2017-09-151-0/+2
| | | | Call the .join() method of threading.Timer timers to prevent the "threading_cleanup() failed to cleanup 1 threads" warning.
* bpo-31234: Add test.support.wait_threads_exit() (#3578)Victor Stinner2017-09-141-6/+8
| | | | Use _thread.count() to wait until threads exit. The new context manager prevents the "dangling thread" warning.
* bpo-31234: Join threads in test_threading (#3579)Victor Stinner2017-09-141-0/+4
| | | Call thread.join() to prevent the "dangling thread" warning.
* bpo-31370: Remove support for threads-less builds (#3385)Antoine Pitrou2017-09-071-2/+2
| | | | | | * Remove Setup.config * Always define WITH_THREAD for compatibility.
* bpo-31234: test_threading: fix ref cycle (#3150)Victor Stinner2017-08-181-0/+2
| | | | test_bare_raise_in_brand_new_thread() now explicitly breaks a reference cycle to not leak a dangling thread.
* bpo-30387: Fix warning in test_threading (#1634)Victor Stinner2017-05-171-3/+5
| | | | | | | | | test_is_alive_after_fork() now joins directly the thread to avoid the following warning added by bpo-30357: Warning -- threading_cleanup() failed to cleanup 0 threads after 2 sec (count: 0, dangling: 21) Use also a different exit code to catch generic exit code 1.
* bpo-6532: Make the thread id an unsigned integer. (#781)Serhiy Storchaka2017-03-231-3/+6
| | | | | | | | | | | * bpo-6532: Make the thread id an unsigned integer. From C API side the type of results of PyThread_start_new_thread() and PyThread_get_thread_ident(), the id parameter of PyThreadState_SetAsyncExc(), and the thread_id field of PyThreadState changed from "long" to "unsigned long". * Restore a check in thread_get_ident().
* bpo-29376: Fix assertion error in threading._DummyThread.is_alive() (GH-236)Xiang Zhang2017-02-271-0/+3
|
* Issue #26941: Fix test_threading that hangs on the Android armv7 qemu emulator.Xavier de Gaye2016-12-081-1/+1
|
* Merge 3.5 (fix raise)Victor Stinner2016-08-181-0/+18
|\
| * Fix SystemError in "raise" statementVictor Stinner2016-08-181-0/+18
| | | | | | | | | | | | | | | | Issue #27558: Fix a SystemError in the implementation of "raise" statement. In a brand new thread, raise a RuntimeError since there is no active exception to reraise. Patch written by Xiang Zhang.
* | Issue #19527: Fixed tests with defined COUNT_ALLOCS.Serhiy Storchaka2016-07-031-1/+3
|\ \ | |/
| * Issue #19527: Fixed tests with defined COUNT_ALLOCS.Serhiy Storchaka2016-07-031-1/+3
| |
* | Remove more unused imports in tests.Serhiy Storchaka2016-04-241-1/+0
| |
* | Issue #23277: Remove unused imports in tests.Serhiy Storchaka2016-04-241-1/+1
| |
* | Issue #26778: Fixed "a/an/and" typos in code comment, documentation and errorSerhiy Storchaka2016-04-171-1/+1
|\ \ | |/ | | | | messages.
| * Issue #26778: Fixed "a/an/and" typos in code comment and documentation.Serhiy Storchaka2016-04-171-1/+1
| |
* | Issue #20556: Used specific assert methods in threading tests.Serhiy Storchaka2016-03-141-14/+13
|\ \ | |/
| * Issue #20556: Used specific assert methods in threading tests.Serhiy Storchaka2016-03-141-14/+13
| |
* | Issue #23883: Add missing APIs to __all__; patch by Jacek KołodziejMartin Panter2015-11-141-0/+8
|/
* Issue #19235: Add new RecursionError exception. Patch by Georg Brandl.Yury Selivanov2015-07-031-1/+1
|
* Issue #9517: Move script_helper to the support package.Berker Peksag2015-05-061-1/+1
| | | | Patch by Christie Wilson.
* Issue #23943: Fix typos. Patch by Piotr Kasprzyk.Berker Peksag2015-04-141-1/+1
|
* Issue #22423: Unhandled exception in thread no longer causes unhandledSerhiy Storchaka2014-09-211-2/+83
| | | | AttributeError when sys.stderr is None.
* Issue #20526, #19466: Revert changes of issue #19466 which introduces aVictor Stinner2014-02-131-49/+0
| | | | | regression: don't clear anymore the state of Python threads early during the Python shutdown.
* Issue #20532: Tests which use _testcapi now are marked as CPython only.Serhiy Storchaka2014-02-071-2/+4
|\
| * Issue #20532: Tests which use _testcapi now are marked as CPython only.Serhiy Storchaka2014-02-071-1/+2
| |
| * Issue #14432: Generator now clears the borrowed reference to the thread stateVictor Stinner2013-12-131-0/+43
| | | | | | | | | | | | | | Fix a crash when a generator is created in a C thread that is destroyed while the generator is still used. The issue was that a generator contains a frame, and the frame kept a reference to the Python state of the destroyed C thread. The crash occurs when a trace function is setup.
* | Issue #14432: Remove the thread state field from the frame structure. Fix aVictor Stinner2013-12-131-0/+38
| | | | | | | | | | | | | | crash when a generator is created in a C thread that is destroyed while the generator is still used. The issue was that a generator contains a frame, and the frame kept a reference to the Python state of the destroyed C thread. The crash occurs when a trace function is setup.
* | Issue #18874: Implement the PEP 454 (tracemalloc)Victor Stinner2013-11-231-2/+2
| |
* | Close #19466: Clear the frames of daemon threads earlier during the PythonVictor Stinner2013-11-121-0/+50
| | | | | | | | | | shutdown to call objects destructors. So "unclosed file" resource warnings are now corretly emitted for daemon threads.
* | Whitespace normalization.Tim Peters2013-10-091-16/+16
| |
* | Issue 19158: a rare race in BoundedSemaphore could allow .release() too often.Tim Peters2013-10-091-0/+18
|\ \ | |/
| * Issue 19158: a rare race in BoundedSemaphore could allow .release() too often.Tim Peters2013-10-091-0/+18
| |
* | Issue #18948: improve SuppressCoreFiles to include Windows crash popup ↵Antoine Pitrou2013-10-081-1/+2
| | | | | | | | | | | | suppression, and use it in more tests. Patch by Valerie Lambert and Zachary Ware.
* | Get "stopped" back into repr(Thread) when appropriate.Tim Peters2013-09-091-0/+25
| | | | | | | | | | | | | | | | | | | | Due to recent changes, a Thread doesn't know that it's over before someone calls .join() or .is_alive(). That meant repr(Thread) continued to include "started" (and not "stopped") before one of those methods was called, even if hours passed since the thread ended. Repaired that.
* | Issue 18984: Remove ._stopped Event from Thread internals.Tim Peters2013-09-081-137/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The fix for issue 18808 left us checking two things to be sure a Thread was done: an Event (._stopped) and a mutex (._tstate_lock). Clumsy & brittle. This patch removes the Event, leaving just a happy lock :-) The bulk of the patch removes two excruciating tests, which were verifying sanity of the internals of the ._stopped Event after a fork. Thanks to Antoine Pitrou for verifying that's the only real value these tests had. One consequence of moving from an Event to a mutex: waiters (threads calling Thread.join()) used to block each on their own unique mutex (internal to the ._stopped event), but now all contend on the same mutex (._tstate_lock). These approaches have different performance characteristics on different platforms. I don't think it matters in this context.
* | Issue #18808 again: fix the after-fork logic for not-yet-started or ↵Antoine Pitrou2013-09-081-1/+1
| | | | | | | | | | | | already-stopped threads. (AFAICT, in theory, we must reset all the locks, not just those in use)
* | Issue #18808: Thread.join() now waits for the underlying thread state to be ↵Antoine Pitrou2013-09-071-2/+68
| | | | | | | | | | | | destroyed before returning. This prevents unpredictable aborts in Py_EndInterpreter() when some non-daemon threads are still running.
* | Issue #18882: Add threading.main_thread() function.Andrew Svetlov2013-09-041-7/+71
| |
* | test_threading isn't rudimentary anymoreAntoine Pitrou2013-09-011-1/+3
|\ \ | |/
| * test_threading isn't rudimentary anymoreAntoine Pitrou2013-09-011-1/+3
| |
* | Issue #18418: After fork(), reinit all threads states, not only active ones.Charles-François Natali2013-08-301-0/+21
|\ \ | |/ | | | | Patch by A. Jesse Jiryu Davis.
| * Issue #18418: After fork(), reinit all threads states, not only active ones.Charles-François Natali2013-08-301-0/+21
| | | | | | | | Patch by A. Jesse Jiryu Davis.
| * backported rev 79713 from 3.4, test_recursion_limit skipped for -O0Łukasz Langa2013-04-231-1/+2
| |
* | Issue #18808: Non-daemon threads are now automatically joined when a ↵Antoine Pitrou2013-08-251-0/+48
| | | | | | | | sub-interpreter is shutdown (it would previously dump a fatal error).
* | Issue #17094: Clear stale thread states after fork().Antoine Pitrou2013-05-051-0/+25
| | | | | | | | | | | | | | Note that this is a potentially disruptive change since it may release some system resources which would otherwise remain perpetually alive (e.g. database connections kept in thread-local storage).
* | Merge #17435: Don't use mutable default values in Timer.R David Murray2013-03-301-12/+27
|\ \ | |/ | | | | Patch by Denver Coneybeare with some test modifications by me.
| * Issue #17435: Don't use mutable default values in Timer.R David Murray2013-03-301-12/+27
| | | | | | | | Patch by Denver Coneybeare with some test modifications by me.