if __name__ == '__main__':
# 检测线程数
def func():
while True:
print(threading.active_count())
time.sleep(1)
f1 = threading.Thread(target=func)
f1.start()
import logging
logging.basicConfig(level=logging.INFO,format="%(asctime)s %(message)s", datefmt="%m/%d/%Y %H:%M:%S [%A]")
def func1(*args):
logging.info('func1 %s'%args)
# time.sleep(5)
def func2(*args):
logging.info('func2 %s' % args)
# time.sleep(5)
def func3(*args):
logging.info('func3 %s' % args)
# time.sleep(5)
def func4(*args):
logging.info('func4 %s' % args)
# time.sleep(5)
def func5(*args):
logging.info('func5 %s' % args)
# time.sleep(5)
# 测试
t1 = Timer()
logging.info('start')
t1.add([5,func1])
time.sleep(0.5)
t1.add([4,func2])
time.sleep(0.5)
t1.add([3,func3])
time.sleep(0.5)
t1.add([2,func4])
time.sleep(0.5)
t1.add([1,func5])
time.sleep(5)
t1.add([1,func1])
t1.add([2,func2])
t1.add([3,func3])
t1.add([4,func4])
t1.add([5,func5])
# 输出
# 2
# 07/27/2017 10:36:47 [Thursday] start
# add [5, <function func1 at 0x000000D79FC77E18>]
# add [4, <function func2 at 0x000000D79FCA8488>]
# 3
# add [3, <function func3 at 0x000000D79FCA8510>]
# add [2, <function func4 at 0x000000D79FCA8598>]
# 3
# add [1, <function func5 at 0x000000D79FCA8620>]
# 3
# 07/27/2017 10:36:50 [Thursday] func5 1
# 07/27/2017 10:36:51 [Thursday] func4 0.498349666595459
# 3
# 07/27/2017 10:36:51 [Thursday] func3 0.49782633781433105
# 07/27/2017 10:36:52 [Thursday] func2 0.49848270416259766
# 3
# 07/27/2017 10:36:52 [Thursday] func1 0.48449039459228516
# 2
# 2
# add [1, <function func1 at 0x000000D79FC77E18>]
# add [2, <function func2 at 0x000000D79FCA8488>