
如下代码, 无论有没有 main ,使用 threading.Thread 没有 start , 为什么运行都执行了。
Python 3.8+ , Win 和 Mac 表现都是在这个样子,请教下怎么回事,谢谢
代码片段一 [有 main 的] :
import time import threading def print_one(): while True: print(time.time()) time.sleep(2) if __name__ == '__main__': t1 = threading.Thread(target=print_one()) # t1.start() print(threading.enumerate()) 代码片段二 [没有 main 的]
import time import threading def print_one(): while True: print(time.time()) time.sleep(2) t1 = threading.Thread(target=print_one()) # t1.start() print(threading.enumerate()) 1 stein42 2022 年 12 月 10 日 t1 = threading.Thread(target=print_one) # 去掉 print_one 后的括号 |
2 xiaoyanbot OP @stein42 感谢! 可以了 |