Commit Graph

110 Commits

Author SHA1 Message Date
Ezio Melotti
f10644983e Merge with 3.2. 2011-10-19 11:06:26 +03:00
Ezio Melotti
e130a52d8a Remove duplication. 2011-10-19 10:58:56 +03:00
Benjamin Peterson
7761b951db add ThreadError to threading.__all__ (closes #12679) 2011-08-02 13:05:47 -05:00
Éric Araujo
0cdd4454f3 Remove indirection in threading (issue #10968).
The public names (Thread, Condition, etc.) used to be factory functions
returning instances of hidden classes (_Thread, _Condition, etc.),
because (if Guido recalls correctly) this code pre-dates the ability to
subclass extension types.

It is now possible to inherit from Thread and other classes, without
having to import the private underscored names like multiprocessing did.

A doc update will follow: a patch is under discussion on the issue.
2011-07-28 00:28:28 +02:00
Antoine Pitrou
428bc6c48f Issue #12573: Add resource checks for dangling Thread and Process objects. 2011-07-15 22:15:38 +02:00
Antoine Pitrou
c081c0c6a0 Issue #12573: Add resource checks for dangling Thread and Process objects. 2011-07-15 22:12:24 +02:00
Victor Stinner
2a12974bca Close #12028: Make threading._get_ident() public, rename it to
threading.get_ident() and document it. This function was used by
_thread.get_ident().
2011-05-30 23:02:52 +02:00
Victor Stinner
d5c355ccc7 Issue #11223: Replace threading._info() by sys.thread_info 2011-04-30 14:53:09 +02:00
Victor Stinner
c2824d41c3 Issue #11915: threading.RLock()._release_save() raises a RuntimeError if the
lock was not acquired.
2011-04-24 23:41:33 +02:00
Victor Stinner
754851f456 Issue #11223: Add threading._info() function providing informations about the
thread implementation.

Skip test_lock_acquire_interruption() and test_rlock_acquire_interruption() of
test_threadsignals if a thread lock is implemented using a POSIX mutex and a
POSIX condition variable. A POSIX condition variable cannot be interrupted by a
signal (e.g. on Linux, the futex system call is restarted).
2011-04-19 23:58:51 +02:00
Antoine Pitrou
0bd4deba38 Issue #6064: Add a daemon keyword argument to the threading.Thread
and multiprocessing.Process constructors in order to override the
default behaviour of inheriting the daemonic property from the current
thread/process.
2011-02-25 22:07:43 +00:00
Raymond Hettinger
5bdfd910f5 Remove out-of-date comment 2011-01-16 09:16:27 +00:00
Raymond Hettinger
5cee47f321 Add entry for Barrier objects. 2011-01-11 19:59:46 +00:00
Gregory P. Smith
9bd4a245f2 Fix the new bug introduced in the r87710 fix for issue 6643. DummyThread
deletes its _block attribute, deal with that.  This prevents an uncaught
exception in a thread during test_thread.

This refactors a bit to better match what I did in the r87727 backport to 2.7.
2011-01-04 18:33:38 +00:00
Gregory P. Smith
96c886ce96 issue6643 - Two locks held within the threading module on each thread instance
needed to be reinitialized after fork().  Adds tests to confirm that they are
and that a potential deadlock and crasher bug are fixed (platform dependant).
2011-01-03 21:06:12 +00:00
Antoine Pitrou
401edd69cf Issue #4188: Avoid creating dummy thread objects when logging operations
from the threading module (with the internal verbose flag activated).
2010-12-17 17:42:16 +00:00
Kristján Valur Jónsson
6331520950 Issue 10260
Adding the wait_for() method to threading.Condition
2010-11-18 12:46:39 +00:00
Kristján Valur Jónsson
3be00037d6 issue 8777
Add threading.Barrier
2010-10-28 09:43:10 +00:00
Georg Brandl
b9a4391754 #10218: return timeout status from Condition.wait, mirroring other primitives' behavior. 2010-10-28 09:03:20 +00:00
Brett Cannon
148724d39b Rip out old testing code that was inlined in threading.
Partially closes issue 9346. Thanks Brian Brazil for the patch.
2010-07-23 15:50:02 +00:00
Antoine Pitrou
0454af9b54 Issue #850728: Add a *timeout* parameter to the acquire() method of
`threading.Semaphore` objects.  Original patch by Torsten Landschoff.
2010-04-17 23:51:58 +00:00
Antoine Pitrou
7c3e577395 Issue #7316: the acquire() method of lock objects in the :mod:threading
module now takes an optional timeout argument in seconds.  Timeout support
relies on the system threading library, so as to avoid a semi-busy wait
loop.
2010-04-14 15:44:10 +00:00
Senthil Kumaran
fdd4d0f5d6 Merged revisions 79817 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79817 | senthil.kumaran | 2010-04-06 08:53:33 +0530 (Tue, 06 Apr 2010) | 2 lines

  Fix Issue8262 - changing RuntimeError wording to "Threads can only be started once"
........
2010-04-06 03:30:18 +00:00
Gregory P. Smith
3fdd9648cb Merged revisions 78517 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78517 | gregory.p.smith | 2010-02-28 10:36:09 -0800 (Sun, 28 Feb 2010) | 3 lines

  Issue #7481: When a threading.Thread failed to start it would leave the
  instance stuck in initial state and present in threading.enumerate().
........
2010-02-28 18:57:46 +00:00
Antoine Pitrou
434736a1a6 Issue #3001: Add a C implementation of recursive locks which is used by
default when instantiating a `Threading.RLock` object. This makes
recursive locks as fast as regular non-recursive locks (previously,
they were slower by 10x to 15x).
2009-11-10 18:46:01 +00:00