问题标签 [periodic-task]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
346 浏览

django - 如何在 Heroku 上定期运行 Django 任务?

我有一个使用 1 个网络测功机在 Heroku 上部署的 Django 应用程序,基本上只是托管一个人们可以注册的网站,然后该应用程序可以向这些人发送电子邮件。

现在我手动发送所有电子邮件;我每次在heroku服务器上都进入django shell,并调用类似的函数a.send_customized_email()

我想知道如何让调度程序定期发送电子邮件,而无需我每次都在后端编写命令?

我听说过 Django celery,但是如何准确地集成它呢?我应该启动另一个测功机吗?配置文件应该是什么?

提前致谢。

0 投票
1 回答
987 浏览

android - setRequiredNetworkType 不适用于周期性任务?

根据我的理解,以下代码应该设置一个仅在有网络连接时才运行的定期作业。这意味着尽管是周期性的,但除非满足所需的条件,否则它不会运行。

但这不起作用。无论是否有网络,它总是在该时间段之后运行。难道我做错了什么 ?

0 投票
0 回答
566 浏览

python - Django Celery Beat 定期任务

我正在尝试使用 django celery 运行定期任务,它是由用户使用自定义参数动态添加的。我有以下代码来启动任务。我只希望它运行一次,因为它需要一段时间才能设置,而且我有一个无限的 while 循环,不断检查网站上的更改。

问题是我创建任务的时候并没有启动,需要等待间隔才启动。创建对象时是否可以启动任务?

否则,我可以将间隔更改为仅一秒以立即开始。这个实现的问题是它每秒都会启动线程,即使我只想运行一次,并让它继续在后台运行。

有人对此有解决方案吗?

0 投票
1 回答
787 浏览

android - 即使在退出应用程序后也让 GcmNetworkManager 定期任务工作?

我需要一个需要互联网连接并在重新启动后仍然存在的定期任务。我已经取得了很多成就,但问题是我希望应用程序在我退出后也能继续工作。

如,如果我存在应用程序并关闭 wifi 然后再次将其关闭(如果时间已到),则应触发任务并在后台工作。

这是 startPeriodicTask 方法

我只是在检查 playServices 后立即在 OnCreate 中调用此方法

我已将此添加到清单中,以便在重新启动后继续执行该作业

0 投票
1 回答
508 浏览

android - Firebase JobDispatcher 是否在屏幕关闭时触发周期性服务?

我正在使用活动识别 api 和使用 google play 服务的位置,我知道它们是如何消耗电池的,所以如果是这种情况,我真的会很高兴,并且当屏幕显示时作业服务停止,这限制了收集数据到用户实际使用他的手机时,而不是 24/7。

当我尝试对此进行测试时,有时会在半小时后停止,有时会更多,有时会立即发生,这与其他后台服务和当前正在使用的应用程序有关吗?有没有办法在屏幕关闭时强制服务停止?

至于代码,我使用的是从存储库下载的确切示例,并且我所做的唯一修改是在触发服务时从作业服务调用识别服务(定期任务)

0 投票
0 回答
453 浏览

android - 定期作业在触发 Firebase JobScheduler 后不久停止工作?

我正在使用 firebase Job Dispatcher 来制作由可用网络触发的定期作业。问题是该服务运行大约 5 分钟,有时甚至更短,然后它就完全停止了。我尝试连接和断开网络,但结果是一样的。

根据我之前收集的信息,如果有可用的网络(wifi),则以下代码应该触发周期性任务,由于后台服务中的优化,该周期不准确,但如果我仍然应该触发它不断连接。但它没有,我仍然连接到 wifi 几个小时并在手机上工作,但服务运行时间不超过 5 分钟。

这就是我按照官方文档实现代码的方式

我已经尝试在 gradle 文件中添加compile 'com.firebase:firebase-jobdispatcher:0.5.2'compile 'com.firebase:firebase-jobdispatcher-with-gcm-dep:0.5.2'(不是同时)。

工作服务

显现

我已将此添加到我的活动中:

我也将它添加到清单中以保持工作:

0 投票
2 回答
261 浏览

android - 有没有办法让周期性任务的延迟更短?

我正在使用firebase作业调度程序,并且正在编写一个简单的定期作业,当有互联网连接时,它应该每分钟左右运行一次。我知道作业不能完全按时运行,因为他们想延长电池寿命并允许其他应用程序也能正常工作,但延迟太长了。它可以达到 25 分钟,这与想要的 1 分钟相比太长了。有没有办法让定期作业至少每 3-5 分钟运行一次?

Thix 是我编写周期性任务的方式:

0 投票
2 回答
7027 浏览

android - 如何在 Firebase JobDispatcher 中设置周期性任务的周期?

我已经阅读了所有可用的官方文档(令人惊讶的是不是很多),我能得到的定期任务就是这段代码

我知道这.setRecurring使得作业具有周期性,并且trigger使它以 60 秒的间隔开始,但是第二次执行呢?这是否意味着第二次也将从第一次开始执行 60 秒?

这不可能是真的,因为即使考虑到后台活动的优化以及服务如何运行比他们应该的稍晚一点,编程 60 秒的周期而作业运行大约 5/10/20 分钟后太多了的区别。官方文档说差异是几秒钟,也许几分钟不超过 20 分钟。

基本上,我的问题是这 .setTrigger(Trigger.executionWindow(0, 60))真的意味着这个时间段是 60 秒还是我弄错了?

0 投票
2 回答
698 浏览

android - 只要有可用网络,作业计划程序就运行作业?

我正在使用下面的代码来安排作业在有互联网时运行,但它只运行一次,我希望它在有可用网络时运行。这可能吗?

我尝试使作业定期并添加一个网络约束,认为它会在经过一段时间后睡眠和唤醒并检查可用网络,如果有可用网络,那么它将执行作业,否则它将返回睡眠模式但我没有得到想要的行为,因为只要时间段结束,作业就会一直运行(好像没有网络限制)

这是调度代码

0 投票
1 回答
676 浏览

c# - UWP ThreadPoolTimer 等待工作项完成

我需要实现一个定期计时器(10 秒),它将检查一些更改并更新数据库和 UI。我需要等到“作业”完成,然后再次启动计时器。我打电话

在“作业”开始,然后在完成时再次创建计时器。但似乎当我使用使用 async 关键字的工作项处理程序时,线程池工作项可能会在处理程序中的所有代码执行之前设置为完整状态。查看完整代码:

问题是,我怎样才能等到“工作”完成后再重新开始?