- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在用 Perl 编写脚本,需要每晚在同一时间运行,但有时时间需要更改。我找到了 Schedule::Cron在 CPAN 上,它做我想做的事。根据 run 方法的文档,
nofork => 1
Don't fork when starting the scheduler. Instead, the jobs are executed within current process. In your executed jobs, you have full access to the global variables of your script and hence might influence other jobs running at a different time.
这是我想做的,但没有做。每当我检查全局变量内存位置时,它们都是相同的,但任务启动时值不会改变。
我在 Windows 和 Linux 上都运行过这个程序,我让其他人查看代码以查看我的逻辑是否正确。我需要做什么来保留对全局变量的更改。
use warnings;
use strict;
use Schedule::Cron;
use Time::localtime;
use constant {
EVERY_DAY_10PM => '* * * * * 4,16,28,40,52',
EVERY_DAY_NOON => '* * * * * 0,12,24,36,48',
EVERY_DAY_2AM => '* * * * * 7,19,31,43,55'
};
############GLOBAL VARIABLES############
our $cron = new Schedule::Cron(\&runUpdate);
our $cronId;
our $updateTimeDirty = 0;
############END GLOBAL VARIABLES############
############MAIN PROGRAM BODY############
$cronId = $cron->add_entry(EVERY_DAY_10PM);#defaults to \&runUpdate
$cron->add_entry(EVERY_DAY_NOON, \&changeTime);
$cron->run(no_fork => 1);
############END MAIN PROGRAM BODY############
sub changeTime {
our $cron;
our $cronId;
our $updateTimeDirty;
print "updateTimeDirty is $updateTimeDirty\n";
print "udpateTimeDirty location: " . \$updateTimeDirty . "\n";
print "cron object: " . \$cron . "\n";
if ($updateTimeDirty) {
my $cronEntry = $cron->get_entry($cronId);
$cronEntry->{time} = EVERY_DAY_2AM;
$cron->update_entry($cronId, $cronEntry);
}
print "\n";
}
sub runUpdate {
our $updateTimeDirty;
$updateTimeDirty = 1;
print "Updating at " . localtime()->sec . " ($updateTimeDirty)\n\n";
}
最佳答案
no_fork
和 nofork
之间存在显着差异。尝试:
$cron->run(nofork => 1);
关于perl - 使用 Schedule::Cron 更改预定时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4820733/
我对我接管的项目有疑问。我正在转换其他人编写的 MS Access 应用程序并将其转换为 MySQL/PHP Web 应用程序。其中大部分已经完成,但是,当涉及到此应用程序的调度部分时,我处于停滞状态
我有一个带有 @Scheduled 注释的方法。此方法包含长时间运行、昂贵的操作。我担心当计划的方法开始运行时应用程序会变慢。有什么办法可以为预定方法分配优先级吗?在 Spring 中启动低优先级后台
我的大学有一个预订项目房间的网站;但除非你很幸运或者半夜醒着,否则要订到房间并不容易。因此,我编写了一个 JS 片段来填写所有必要的字段并提交表单。 但是我如何自动化这个过程呢? 我的目的基本上是加载
我正在评估处理大量排队消息的可能解决方案,这些消息必须在特定日期和时间交付给工作人员。执行它们的结果主要是对存储数据的更新,它们最初可能是也可能不是由用户操作触发的。 例如,想想你在一个假设的大型星际
@Scheduled documentation here声明 fixedRateString值可以是 the delay in milliseconds as a String value, e.g
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 4年前关闭。 Improve t
我有一个有趣的情况。我解析了几个新闻发布网站,想通过调度程序将它们保存到数据库中。但是保存时出现错误。由于交易后写条件 described here . 我的模型类是 @Entity @Table(n
我正在阅读 Java Concurrency in Practice 并遇到以下代码片段。 public static void timedRun(final Runnable r,
使用 Azure 数据工厂,是否可以对驻留在 Azure SQL 数据库中的多个(不是全部)表中的所有行执行预定的 1:1 复制/克隆到另一个 Azure SQL 数据库(在本例中为 Azure SQ
我是一名优秀的程序员,十分优秀!