from time import sleep,ctime
>>> def loop0():
print( 'start loop 0 at:',ctime() )
sleep(4)
print( 'loop0 done at :',ctime())
>>> def loop1():
print('start loop 1 at :',ctime())
sleep(2)
print('loop1 done at:',ctime())
>>> def main():
print( 'start main at:',ctime())
loop0()
loop1()
print( 'All DONE at:',ctime() )
>>> if __name__ == '__main__':
main()
|
没有线程的代码。
('start main at:', 'Sat Nov 13 19:09:58 2010')
('start loop 0 at:', 'Sat Nov 13 19:09:58 2010')
('loop0 done at :', 'Sat Nov 13 19:10:02 2010')
('start loop 1 at :', 'Sat Nov 13 19:10:02 2010')
('loop1 done at:', 'Sat Nov 13 19:10:04 2010')
('All DONE at:', 'Sat Nov 13 19:10:04 2010')
带入了现成:
from time import sleep,ctime
>>> def loop0():
print( 'start loop 0 at:',ctime() )
sleep(4)
print( 'loop0 done at :',ctime())
>>> def loop1():
print('start loop 1 at :',ctime())
sleep(2)
print('loop1 done at:',ctime())
>>> def main():
print( 'start main at:',ctime() )
thread.start_new_thread( loop0, () )
thread.start_new_thread( loop1,())
sleep(6)
print( 'all DONE at:',ctime() )
|
运行结果:
('start main at:', 'Sat Nov 13 19:14:30 2010')
('start loop 0 at:', 'Sat Nov 13 19:14:30 2010')
('start loop 1 at :', 'Sat Nov 13 19:14:30 2010')
('loop1 done at:', 'Sat Nov 13 19:14:32 2010')
('loop0 done at :', 'Sat Nov 13 19:14:34 2010')
('all DONE at:', 'Sat Nov 13 19:14:36 2010')
创建多线程的函数: thread.start_new_thread
需要的模块; import thread
start_new_thread(...)
start_new_thread(function, args[, kwargs])
(start_new() is an obsolete synonym)
Start a new thread and return its identifier. The thread will call the
function with positional arguments from the tuple args and keyword arguments
taken from the optional dictionary kwargs. The thread exits when the
function returns; the return value is ignored. The thread will also exit
when the function raises an unhandled exception; a stack trace will be
printed unless the exception is SystemExit.
|
start_new_thread( 函数名,参数),即使不带入参数,也要带入参数表,可以使用" () "