_mport threading
?
_ef run(x):
?while x:
?print(x)
?
_ = threading.Thread(target=run,args=(4,), daemon=True)
?#t.setdaemon(True)
?#t.daemon=True
_.start() # 开始线程
?# t.join() # join() 表示主线程阻塞,一直等子线程执行结束
按道理的确是主线程结束,子线程也都结束,但主线程销毁运行时环境,kill掉子线程这都是需要时间的,你把sleep放到for循环中,再跑一次就感受到了。至于那么>>>的出现这在多线程中很正常,主线程结束时idle就会出现新的提示符,此时子线程还没结束就自然输出到idle中了。