mirror of https://github.com/python/cpython
(test_thread.py): modifications to quiet it up when not running as a script.
(testall.py): added test_thread to the list of regression tests.
This commit is contained in:
parent
63a0c376ea
commit
af0a1a6530
|
@ -6,6 +6,10 @@ import whrandom
|
|||
import thread
|
||||
import time
|
||||
|
||||
verbose = 0
|
||||
if __name__ == '__main__':
|
||||
verbose = 1
|
||||
|
||||
mutex = thread.allocate_lock()
|
||||
whmutex = thread.allocate_lock() # for calls to whrandom
|
||||
running = 0
|
||||
|
@ -19,9 +23,11 @@ def task(ident):
|
|||
whmutex.acquire()
|
||||
delay = whrandom.random() * numtasks
|
||||
whmutex.release()
|
||||
print 'task', ident, 'will run for', delay, 'sec'
|
||||
if verbose:
|
||||
print 'task', ident, 'will run for', delay, 'sec'
|
||||
time.sleep(delay)
|
||||
print 'task', ident, 'done'
|
||||
if verbose:
|
||||
print 'task', ident, 'done'
|
||||
mutex.acquire()
|
||||
running = running - 1
|
||||
if running == 0:
|
||||
|
@ -33,7 +39,8 @@ def newtask():
|
|||
global next_ident, running
|
||||
mutex.acquire()
|
||||
next_ident = next_ident + 1
|
||||
print 'creating task', next_ident
|
||||
if verbose:
|
||||
print 'creating task', next_ident
|
||||
thread.start_new_thread(task, (next_ident,))
|
||||
running = running + 1
|
||||
mutex.release()
|
||||
|
@ -84,11 +91,14 @@ def task2(ident):
|
|||
whmutex.acquire()
|
||||
delay = whrandom.random() * numtasks
|
||||
whmutex.release()
|
||||
print 'task', ident, 'will run for', delay, 'sec'
|
||||
if verbose:
|
||||
print 'task', ident, 'will run for', delay, 'sec'
|
||||
time.sleep(delay)
|
||||
print 'task', ident, 'entering barrier', i
|
||||
if verbose:
|
||||
print 'task', ident, 'entering barrier', i
|
||||
bar.enter()
|
||||
print 'task', ident, 'leaving barrier', i
|
||||
if verbose:
|
||||
print 'task', ident, 'leaving barrier', i
|
||||
mutex.acquire()
|
||||
running = running - 1
|
||||
if running == 0:
|
||||
|
|
|
@ -24,6 +24,7 @@ tests = ['test_grammar',
|
|||
'test_struct',
|
||||
'test_errno',
|
||||
'test_dl',
|
||||
'test_thread',
|
||||
]
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
|
Loading…
Reference in New Issue