目前,我正在编写一个服务器来响应python中的请求,我想开始另一个进程来每小时处理一次数据。
我只知道multiprocessing
可以创建流程,但我不知道如何每小时创建一次?
答案 0 :(得分:1)
附表? Sched module定义了一个实现通用事件调度程序的类:
答案 1 :(得分:0)
让我向你解释一下我的观点。
while True:
~~codes # this is codes you want to continue once an hour
sleep(3600)
这个while循环现在是无限的,一旦它处理你的代码,它就会 等待3600秒,然后它将再次处理它,它将等待3600 再次秒,直到你停止while循环。
例如,如果你想要它5小时:
x=0
while x<5:
~~codes # this is codes you want to continue once an hour
sleep(3600)
x+=1
答案 2 :(得分:0)
无需启动另一个进程,使用单个程序来处理每小时请求。您可以在linux中使用名为CRON的调度程序来执行此操作。
输入此内容以检查是否有任何可用的croontabs
$ sudo crontab -l 如果没有安装crontab,请添加一个。
$ sudo crontab -e
然后它会要求你选择编辑,选择你喜欢的任何编辑器,我的选择是纳米。
接下来将cron调度命令添加到该文件。如果程序是test.py则为您的问题,那么
在打开的编辑器中添加以下行。
&#34; * * / 1 * * * python /path_to_test.py/test.py"
路径是您的程序文件所在的位置。您的程序将每小时唤醒并处理请求。有关cron的更多详细信息,请访问此页面。http://impythonist.wordpress.com/2014/11/13/how-to-wake-up-a-python-script-while-you-are-in-a-sound-sleep/
如果您需要多处理功能,请转到APScheduler。