定时运行程序怎么使用

作者&投稿:邴败 (若有异议请与网页底部的电邮联系)
~ 在我们的开发工作中,时常会有这样的开发需求,如需要定时或者周期性的运行某些程序,因此经常用到一些定时服务,如在
Linux
系统中使用
Crond
服务实现程序的定时运行。

Python
中也有这样的一个模块,那就是
APScheduler
,它是基于
Quartz
的一个
Python
定时任务框架,实现了
Quartz
的全部功能,使用起来十分简单、高效。其提供了基于日期、固定时间间隔以及
Crontab
类型的任务,并且支持持久化任务。同时也提供了不同的存储机制,可以方便与数据库等第三方的外部持久化存储进行协同工作。它主要包含了四种组件:
Triggers
:任务触发器,任务以何种方式触发。
Job stores
:任务存储器,持久存储任务。
Executors
:任务执行器,执行任务的模块。
Schedulers
:任务调度器,通过配置
trigger、job store、executor
等实现对任务的增删改查等调度控制。
APScheduler安装
安装过程如下:

任务存储器 Job stores
Job stores
存储被调度的任务,默认的任务存储是简单地把任务保存在内存(MemoryJobStore)中,其他的任务存储形式是将任务保存在数据库中。一个任务的数据将在保存在持久化任务存储时被序列化,在加载时被反序列化。调度器不能分享同一个任务存储。
job store
支持主流的存储机制:
redis、mongodb、内存
等等。

MongoDBJobStore
为例,实例如下:

执行器 Executors
Executors
处理任务的运行,他们通常通过在任务中提交制定的可调用对象到一个线程或者进城池来进行,当任务完成时,执行器将会通知调度器。

调度器 Schedulers
通常在应用只有一个调度器,调度器提供了处理
任务存储、调度器、触发器
合适的接口。配置任务存储和执行器可以在调度器中完成,例如添加、修改和移除任务。常用的调度器如下:
BlockingScheduler
:仅可用在当前你的进程之内,与当前的进行共享计算资源,适合于只在进程中运行单个任务的情况,通常在调度器是你唯一要运行的东西时使用。
BackgroundScheduler
: 在后台运行调度,不影响当前的系统计算运行,适合于要求任何在程序后台运行的情况,当希望调度器在应用后台执行时使用。
AsyncIOScheduler
: 如果当前系统中使用了
async module
,则需要使用异步的调度器,适合于使用asyncio框架的情况。
GeventScheduler
: 如果使用了
gevent
,则需要使用该调度,适合于使用
gevent
框架的情况。
TornadoScheduler
: 如果使用了
Tornado
, 则使用当前的调度器,适合于使用
Tornado
框架的应用。
TwistedScheduler

Twister
应用的调度器,适合使用Twisted框架的应用。
QtScheduler
: Qt的调度器,适合使用QT的情况。
触发器种类Triggers
Triggers
包含调度逻辑,每一个任务有它自己的触发器,用于决定接下来哪一个任务运行,根据
Triggers
中定义的时间点,执行频率,时间区间等等参数设置。除了他们自己初始配置以外,触发器完全是无状态的,触发器有如下几种:
date
:一次性任务,即只执行一次任务。
interval
:循环任务,即按照时间间隔执行任务。
cron
:定时任务,即在每个时间段执行任务。
interval 触发器实例
指定触发器为
interval
,循环任务,即按照
时间间隔
执行任务。
参数如下
year (int|str)
:表示四位数的年份,如2019年
month (int|str)
:表示取值范围为1-12月。
day (int|str)
:表示取值范围为1-31日。
week (int|str)
:一年中的第几周 (1-53)。
day_of_week (int|str)
:表示一周中的第几天(0-6)。
hour (int|str)
:表示取值范围为0-23时。
minute (int|str)
:表示取值范围为0-59分。
second (int|str)
:表示取值范围为0-59秒。
start_date (datetime|str)
:表示开始时间。
end_date (datetime|str)
:表示结束时间。
timezone (datetime.tzinfo|str)
:表示时区取值。
如上,我们设定
每2秒执行一次
,运行结果如下:

date 触发器实例
指定触发器为
date

一次性任务
,即只执行一次任务。
如上,我们设定任务
延时五秒
后执行,运行结果如下:

cron 触发器实例
指定触发器为
cron
,定时任务,即在
每个时间段执行任务

参数如下
year (int|str)
:表示四位数的年份,如2019年
month (int|str)
:表示取值范围为1-12月。
day (int|str)
:表示取值范围为1-31日。
week (int|str)
:一年中的第几周 (1-53)。
day_of_week (int|str)
:表示一周中的第几天(0-6)。
hour (int|str)
:表示取值范围为0-23时。
minute (int|str)
:表示取值范围为0-59分。
second (int|str)
:表示取值范围为0-59秒。
start_date (datetime|str)
:表示开始时间。
end_date (datetime|str)
:表示结束时间。
timezone (datetime.tzinfo|str)
:表示时区取值。
如上,我们设定在2、4月、7~9月,每天晚上22点21分执行一次任务,运行结果如下:

移除、暂停/恢复任务


定时运行程序怎么使用
BackgroundScheduler : 在后台运行调度,不影响当前的系统计算运行,适合于要求任何在程序后台运行的情况,当希望调度器在应用后台执行时使用。AsyncIOScheduler : 如果当前系统中使用了 async module ,则需要使用异步的调度器,适合于使用asyncio框架的情况。GeventScheduler : 如果使用了 gevent ,则需要使...

电脑启动时怎么设置自动运行程序?
1.通过“开始”按钮,找到“程序”,双击打开。2.双击“启动”按钮。3.把指定的程序拖入文件夹。4.添加完成后,开机自动启动指定的程序就设置好了。关闭自启动程序的方法如下:1.首先单击“开始”——“windows系统”,打开“任务管理器”。2.然后切换至“启动”选项卡,列表框中显示了多个自启动程序。

[C语言] 运行C程序的步骤?
(1)上机输入和编辑源程序。通过键盘向计算机输入程序,如发现有错误,要及时改正。最后将此源程序以文件形式存放在自己指定的文件夹内(如果不特别指定,一般存放在用户当前目录下),文件用.c作为后缀,生成源程序文件,如f.c。(2)对源程序进行编译,先用C编译系统提供的“预处理器”(又称“预处理程序...

怎么让小米电视在开机的时候运行指定程序?
1. 打开电视,进入主界面。按下遥控器上的“菜单”按钮,然后选择“设置”选项。2. 在设置界面中,找到并点击“应用”或“应用管理”选项。3. 在应用管理界面中,找到并点击“自启动管理”选项。4. 在自启动管理界面中,会列出已安装的应用程序。找到想要设置开机启动的应用程序,并点击它。5. 在应...

华为手机后台运行程序,怎么控制
一、使用手机时禁止程序在后台运行,可以使用一键清理功能,禁止程序后台运行。操作方法:手机管家->清理加速->勾选需要清理的数据->一键清理。二、手机灭屏时禁止程序在后台运行,可以取消程序的受保护状态。操作方法:打开手机管家>设置 > 受保护应用,关闭应用程序旁边的开关,灭屏后即可关闭后台程序。

在安卓手机上怎么运行java的应用程序
1、在网站上搜索一个APK格式的JAVA虚拟机,下载安装程序后安装在手机上,安装后手机上“所有程序”中增加此程序的图标,如下图(安装方法与安装 其他程序一样,通过手机浏览器下载安装或通过电脑下载安装包)2、先下载好自己需要的JAVA安装包放在储存卡上,进入手机已安装好的“JAVA“,再点击菜单键(...

怎么用命令提示符打开运行
1、点开开始菜单,在搜索框中输入“cmd”,在搜索结果中,对着命令提示符程序,单击鼠标右键,菜单中点击选择“以管理员身份运行”。2、点开开始菜单,再点击所有应用(程序),在Windows系统(Win7时附件中),找到并右键单击,菜单中选择“以管理员身份运行”。方法三 按下Win+C组合键,点击出现的...

Win7怎么设置使用独立显卡运行程序
1、在桌面空白处点击鼠标【右键】,在弹出的选项中,点击【配置可交换显示卡】。2、然后在弹出的AMD可切换显示卡设置中,将需要设置为独立显卡运行的应用程序添加进来,然后选择【高性能】即可,完成后点击底部的【保存】就可以了。N卡切换独立显卡方法:1、在桌面空白处点击鼠标【右键】,在弹出的选项中...

电脑怎么设置运行指定程序打开指定软件?
一、使用windows组策略解决。1.在电脑左下方找到搜索框,输入gpedit.msc,然后点击回车键。2.展开用户配置-管理模板,找到系统,然后点击,在右侧对话框中找到只运行指定的windows应用程序。3.双击打开只运行指定的windows应用程序。4.勾选已启用,然后点击允许的应用程序列表后面的显示。5.然后在任意允许...

...你是如何上机调试运行该程序的?要使用哪些DEBUG命令?功能
将AL寄存器中的值传输到DAT2数组中的DI位置。将SI和DI寄存器的值分别加1。使用LOOP指令将CX计数器的值减1。如果CX计数器不为0,则跳转到第二步继续执行;否则,程序结束。在调试过程中,可以使用DEBUG命令进行单步执行,查看程序执行时各寄存器的值以及内存中的数据。常用的DEBUG命令包括:A:显示当前...

纳溪区15964439547: 如何使电脑程序定时、自动运行? -
表先银杏: 在运行输入CMD 就会弹出一个命令提示窗在里面输入AT AT [\\computername] [ [id] [/DELETE] | /DELETE [/YES]]AT [\\computername] time [/INTERACTIVE] [ /EVERY:date[,...] | /NEXT:date[,...]] "command"\\computername 指定远程计算机. 如...

纳溪区15964439547: 怎么设置定时开机然后自动执行程序 -
表先银杏: 自动定时开机的实现:首先在启动计算机时,按“Delete”键进入BIOS界面.在BIOS设置主界面中选择“Power Management Setup”菜单,进入电源管理窗口.默认情况下,“Automatic Power Up(定时开机,有些机器选项为Resume By ...

纳溪区15964439547: 如何定时执行任务. -
表先银杏: 目前没有软件可以做到定时开机,定时开机的话只能到BIOS里设置.有软件可以定时自动关机或执行任务.定时关机 3000专业的电脑定时关机软件、电脑自动关机软件、家长和办公室管理人员的好帮手、满足各种对定时关机有需求的用户.定...

纳溪区15964439547: 如何使电脑自动开机并运行程序 -
表先银杏: 电脑定时开、关机怎么实现定时开机:计算机启动时按“Delete”键进入BIOS界面.在BIOS设置主界面中选择“Power Management Setup”菜单,进入电源管理窗口.默认情况下,“Resume By Alarm)选项是关闭的,也就是disable的,...

纳溪区15964439547: 怎么在Win7设置定时运行指定软件 -
表先银杏: 工具:win7系统 通过系统工具的【任务计划程序】可以设置定时自动执行任务.步骤1:点击【开始】--【附件】--【系统工具】--【任务计划程序】 步骤2:右键【任务计划程序】,点击【创建基本任务】 步骤3:输入计划任务的名称,点击下一步 步骤4:设置任务何时开始 步骤5:设置从什么时候开始 步骤6:设置任务执行什么操作 步骤7:设置任务执行的程序或者脚本 步骤8:点击完成即可.

纳溪区15964439547: 如何用DOS命令在本地计算机实现定时启动某程序 -
表先银杏: 可以用at命令 比如我想让我C盘下面的一个叫做123.exe的程序在12:00自动运行那么命令可以这样在cmd下面输入 at 12:00 start c:\123.exe 如果提示你说服务尚未启动的话,可以在服务里面启动该服务,也可以在cmd下面输入 sc config Schedule start=AUTO>nul 2>nul net start Schedule

纳溪区15964439547: 怎么用cmd设置定时打开一个程序? -
表先银杏: at 8:00 D:\XXX.txt就是在8点打开D盘的XXX.txt文件,一定要使用完整的路径名称,并且要运行程序或者文件要带有文件类型的扩展名.

纳溪区15964439547: 如何定时运行某个程序
表先银杏: 首先把Task Scheduler 服务打开--在做个计划任务就可以了...

纳溪区15964439547: Win7怎么设置定时自动执行任务 -
表先银杏: 方法/步骤1、点击开始按钮,依次选择打开“所有程序—附件—系统工具”,找到“任务计划程序”即可打开Win7系统的任务计划设置面板.也可以点击Win7开始按钮,在多功能搜索框中输入“任务计划”,直接从搜索结果中打开.2、在Win...

纳溪区15964439547: 怎么用Java实现定时执行某程序 -
表先银杏: java中设置定时任务用Timer类可以实现. 一、延时执行 首先,我们定义一个类,给它取个名字叫TimeTask,我们的定时任务,就在这个类的main函数里执行.代码如下: package test; import java.util.Timer; public class TimeTask { public...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网