马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 proer 于 2020-7-25 10:42 编辑
为什么主线程打印出来的不是完整的五次,是因为在打印的时候线程之间进行了切换导致的吗?感谢import threading
def action(*add):
for arc in add:
print(threading.current_thread().getName() +" "+ arc)
my_tuple = ("http://c.biancheng.net/python/",\
"http://c.biancheng.net/shell/",\
"http://c.biancheng.net/java/")
thread = threading.Thread(target=action,args=my_tuple)
thread.start()
for i in range(5): # 为什么主线程打印出来不是固定的5次,而是不确定的
print(threading.current_thread().getName())
'''
Thread-1 http://c.biancheng.net/python/MainThread
MainThread
MainThread
MainThread
MainThread
Thread-1 http://c.biancheng.net/shell/
Thread-1 http://c.biancheng.net/java/
'''
'''
Thread-1 http://c.biancheng.net/python/MainThread
MainThread
MainThread
MainThread
MainThread
Thread-1 http://c.biancheng.net/shell/
Thread-1 http://c.biancheng.net/java/
'''
多线程有的时候两个线程正好同时运行到 print ,导致打印在同一行,实际上有打印 5 次
每次线程进度不一致,导致打印结果每次都不一样,但是打印出的次数一定会对应的上
|