
python 在 sleep 期间并行处理任务
python 中的 sleep 函数会让程序在指定的时间内进入休眠状态。不过,该如何在 sleep 期间继续执行其他任务呢?
在给定的代码片段中,程序需要在每次执行 times 函数后的 7200 秒内每 60 秒执行一次特定操作。
一种解决方法
立即学习“Python免费学习笔记(深入)”;
一种解决方法是使用多线程。线程是一种轻量级进程,它允许程序并行执行多个任务。在 python 中,可以使用 threading 模块来创建和管理线程。
例如,可以创建一个单独的线程来每 60 秒执行特定操作,并在主线程中执行 times 函数和 7200 秒的 sleep。
修改后的代码片段
import threading
import time
def _do_something():
# 每 60 秒执行的任务
def times(h=0, h1=0):
# 主线程
while True:
while True:
now = datetime.datetime.now()
if now.hour >= h and now.hour <= h1:
break
print('当前时间:', time.strftime("%Y-%m-%d %H:%M:%S", time.localtime()))
time.sleep(20)
for i in range(1, 99999):
datas(content())
print(localtimes)
time.sleep(7200)
# 创建一个线程来每 60 秒执行一次 _do_something 函数
thread = threading.Thread(target=_do_something)
thread.start()
# 在主线程中执行 times 函数
times(h=8, h1=18)使用这种方法,程序可以同时执行 times 函数和每 60 秒执行一次的特定操作。
以上就是Python 如何在 sleep 期间并行执行其他任务?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号