标签: scheduling

通过Windows上的计划任务加载URL的推荐方法

我有一个托管在Windows机器上的网页,我需要确保每天至少加载一次.我目前的计划是创建一个打开Internet Explorer并点击URL的计划任务:

"C:\Program Files\Internet Explorer\iexplore.exe" myurl.com/script_to_run_daily.aspx
Run Code Online (Sandbox Code Playgroud)

这很简单,设置和工作正常,但它让我感到非常黑客,因为Internet Explorer实际上必须打开并点击此URL.我不需要从此页面返回任何输入,它只是在文件被点击时将缓存数据存储在文件中.

这样做有一种更明智的方式吗?万一重要,这是一个VB.net网站.

提前致谢!

.net windows internet-explorer scheduling scheduled-tasks

57
推荐指数
6
解决办法
6万
查看次数

OS调度程序如何重新获得对CPU的控制?

我最近开始学习CPU和操作系统是如何工作的,我对使用提供多任务处理的操作系统的单CPU机器的操作感到困惑.

因此,假设我的机器有一个CPU,这意味着,在任何给定时间,只有一个进程可以运行.

现在,我只能假设操作系统用来控制对宝贵CPU时间的访问的调度程序也是一个过程.

因此,在该机器中,用户进程或调度系统进程在任何给定时间点运行,但不是两者都运行.

所以这是一个问题:

一旦调度程序将CPU的控制权交给另一个进程,它如何重新获得CPU时间再次运行以进行其调度工作?我的意思是,如果当前运行的任何给定进程没有放弃(产生)CPU,那么调度程序本身如何再次运行并确保正确的多任务处理?

到目前为止,我一直在思考,如果用户进程通过系统调用请求I/O操作,那么在系统调用中我们可以确保为调度程序再次分配一些CPU时间.但我甚至不确定这是否有效.

另一方面,如果有问题的用户进程本质上是CPU绑定的,那么从这个角度来看,它可以永远运行,永远不会让其他进程,甚至调度程序再次运行.

假设时间分片调度,我不知道调度程序如何在执行另一个进程时切片时间,甚至不运行?

我非常感谢您在此方面提供的任何见解或参考.

multithreading operating-system scheduling multiprocessing multitasking

55
推荐指数
3
解决办法
9499
查看次数

ScheduledExecutorService异常处理

我使用ScheduledExecutorService定期执行方法.

p代码:

ScheduledExecutorService scheduler = Executors.newSingleThreadScheduledExecutor();
ScheduledFuture<?> handle =
        scheduler.scheduleWithFixedDelay(new Runnable() {
             public void run() { 
                 //Do business logic, may Exception occurs
             }
        }, 1, 10, TimeUnit.SECONDS);
Run Code Online (Sandbox Code Playgroud)

我的问题:

如果run()抛出异常,如何继续调度程序?我应该尝试捕获方法中的所有异常run()吗?或者任何内置的回调方法来处理异常?谢谢!

java multithreading scheduling

53
推荐指数
6
解决办法
3万
查看次数

整个核心致力于单一流程

在Linux中是否有任何方法可以将一个CPU内核分配给特定的给定进程,并且不应该在此内核上安排任何其他进程或中断处理程序?

我已经阅读了Linux 绑定进程中使用taskset实用程序对CPU的进程关联,但这并没有解决我的问题,因为它只是试图将给定的进程关注到该核心,但是可能可以在此核心上安排其他进程,这是我想避免的.

我们应该更改内核代码以进行调度吗?

c linux cpu scheduling linux-kernel

49
推荐指数
4
解决办法
4万
查看次数

如何查看正在运行线程的CPU核心?

在Linux中,假设线程的pid是[pid],从目录/ proc/[pid]我们可以获得许多有用的信息.例如,这些proc文件,/ proc/[pid]/status,/ proc/[pid]/stat和/ proc/[pid]/schedstat都很有用.但是,如何获取运行线程的CPU核心编号?如果一个线程处于睡眠状态,我怎么知道它再次被调度后会运行哪个核心?

BTW,有没有办法为每个CPU核心转储运行和休眠任务的进程(线程)列表?

linux scheduling scheduler scheduled-tasks linux-kernel

47
推荐指数
6
解决办法
8万
查看次数

网球比赛安排

球员数量有限,网球场数量有限.在每轮比赛中,最多可以有比赛更多的比赛.没有休息,没有人打2轮.每个人都与其他人比赛.制定尽可能少轮次的计划.(由于每个人的轮次之间必须休息的规则,可以有一轮没有比赛.)5名球员和2个球场的输出可以是:

 |  1   2   3   4   5
-|------------------- 
2|  1   - 
3|  5   3   - 
4|  7   9   1   - 
5|  3   7   9   5   -
Run Code Online (Sandbox Code Playgroud)

在此输出中,列和行是播放器编号,矩阵内的数字是这两个玩家竞争的圆形数字.

问题是找到一种算法,可以在可行的时间内为更大的实例执行此操作.我们被要求在Prolog中这样做,但任何语言的(伪)代码都是有用的.

我的第一次尝试是一种贪婪的算法,但这会产生太多轮次的结果.然后我建议迭代加深深度优先搜索,我的一个朋友实现了,但是仍然花了太多时间在小到7个玩家的实例上.

(这是一个旧的考试问题.我接触过的任何人都没有任何解决方案.)

algorithm scheduling prolog clpfd

42
推荐指数
3
解决办法
8354
查看次数

PHP:运行预定作业(cron作业)

我的网站上有一个网站我想运行一些预定的任务.你会推荐哪些方法来达到这个目的?

到目前为止我已经想到的是在每个页面的顶部都包含一个脚本,然后让这个脚本检查是否是时候运行这个工作了.

这只是我想到的一个简单示例:

if ($alreadyDone == 0 && time() > $timeToRunMaintainance) {
   runTask();
   $timeToRunMaintainance = time() + $interval;
} 
Run Code Online (Sandbox Code Playgroud)

还有什么我应该考虑的还是有比这更好的方法?

php cron scheduling scheduled-tasks

41
推荐指数
5
解决办法
6万
查看次数

Spring Scheduling:@Scheduled vs Quartz

我正在阅读关于调度的Spring 3.0文档.我倾向于Spring的JobDetailBean for Quartz.但是@Scheduled注释引起了我的注意.看来这是使用Spring Framework调度任务的另一种方式.基于文档,Spring提供了三种调度方式:

  1. @Scheduled
  2. 通过石英
  3. 通过JDK Timer

我对JDK Timer没兴趣.我为什么要选择@Scheduled而不是Quartz?(当我提到Quartz时,我的意思是使用Spring的bean包装器进行Quartz).

假设我的用例非常复杂,我将与第三方Web服务进行通信,以便按指定的时间间隔导入和导出数据.

java spring scheduling quartz-scheduler

41
推荐指数
2
解决办法
2万
查看次数

为Spring @Scheduled提供时区?

如何为基于Spring的@Scheduled cron作业配置时区?

背景:

我有一份工作,每天执行一次,比如说下午2点,使用Spring的@Scheduled注释:

@Scheduled(cron = "0 0 14 * * *")
public void execute() {
    // do scheduled job
}
Run Code Online (Sandbox Code Playgroud)

问题是不同服务器之间的下午2点不同,因为Spring在TimeZone.getDefault() 内部使用.而且,JavaDocTimeZone.getDefault() 状态表明:

获取此主机的默认TimeZone.默认TimeZone的来源可能因实施而异.

换句话说,不确定时区.它可能取决于JVM实现,服务器时区配置,服务器位置和/或其他未知因素.因此,cron作业在不同服务器上的不同时间触发,除非有办法明确设置应该使用哪个时区?

我使用的是Spring 3.2.2.


更新

截至春季4,Spring Jira问题SPR-10456已经解决.因此,@Scheduled注释具有新的区域属性,正是出于此目的.

java cron timezone spring scheduling

41
推荐指数
3
解决办法
2万
查看次数

类调度到布尔可满足性[多项式时间缩减]

我有一些理论/实际问题,我现在还没有关于如何管理的线索,这里是:

我创建了一个SAT求解器,能够在存在模型时找到模型,并且当使用遗传算法在C中出现CNF问题时,不能证明矛盾.

SAT问题看起来基本上就像这样的问题: 在此输入图像描述 我的目标是使用此求解器在许多不同的NP完成问题中找到解决方案 .基本上,我将不同的问题转换为SAT,用我的求解器解决SAT,然后将解决方案转换为原始问题可接受的解决方案.

我已经成功完成了N*N Sudoku以及N-queens问题,但这是我的新目标:将类调度问题减少到SAT,但我不知道如何形成类调度问题以便轻松转换它在SAT之后.

显然,在几个月内,我们的目标就是制作一张如下图所示的时间表:

在此输入图像描述

我发现这个源代码能够解决类调度但不幸的是没有减少SAT:/

我还发现了一些关于规划的文章(例如http://www.cs.rochester.edu/users/faculty/kautz/papers/kautz-satplan06.pdf).

但是,本文中使用的规划域定义语言似乎对我来说过于笼统,以表示类调度问题.:/

是否有人知道如何有效地形成类调度以便将其减少到SAT以及之后,将SAT解决方案(如果它存在^^)转换为类调度?

我基本上对任何建议持开放态度,我现在不知道如何表示,如何减少问题,如何将SAT解决方案转换为计划......


跟进问题:类调度到布尔可满足性[多项式时间减少]第2部分

c algorithm scheduling reduction sat

39
推荐指数
1
解决办法
3625
查看次数