【发布时间】:2022-01-01 08:09:25
【问题描述】:
我想跑步
import time
number1 = 1
while True:
number1 = int(number1) + 1
time.sleep(3)
和
import time
number2 = 1
while True:
number2 = int(number2) + 1
time.sleep(20)
同时在 python 中,我该怎么做呢? 我还是个初学者,如果可以的话,请用更简单的方式解释一下。
子问题:实际代码很少,等待的时间更多,使用多线程还是多处理更好?
子问题 2:在多处理中,我可以运行比我的 cpu 拥有的内核数更多的进程吗?
【问题讨论】:
-
您可以使用
multiprocessing或asyncio或其他并发库,或者只是在循环中,递增number1然后休眠3 秒递增number2然后休眠17 秒。 -
在您给出的最后一个解决方案中,number1 将无法每 3 秒更新一次。
-
您是否有任何具体原因要同时运行它们而不是一个接一个?
-
是的,我需要在不同时间从网页中为每个人请求。如果是一个接一个,我得等到第一个完成。
-
如果我的理解不正确,请纠正我,但是您先请求 number1,然后再请求 number2?我主要是在问,因为我强烈建议不要使用多处理,但是如果没有需要/用于什么的上下文,我不知道什么是最好的。
标签: python loops parallel-processing