标签: scheduling

让J2ME Midlet在没有线程的情况下休眠?

快速问题...使用J2ME(CLDC 1.1,MIDP-2.1)可以让Midlet睡一段时间(不使用线程)...例如:

public class myMidlet extends MIDlet{
    public void startApp() {
        /* Sleep for 10 seconds */

        /* The answer was: */
        try {
            Thread.sleep(time_ms);
        } catch (Exception e) {}
    }
...
Run Code Online (Sandbox Code Playgroud)

我没有那么多使用Java,也不想仅为简单的睡眠编写线程.

提前致谢

答案摘要

我缺乏Java知识.我看到使用Thread.sleep()的例子让我相信它只能在Midlet产生的线程对象中使用...而不是midlet本身.我不想把midlet逻辑假脱机到一个线程让它睡不着......但是现在我知道midlet在默认线程中运行:) 要找到我从未读过的Java书因为我没想到我会用这种语言

java scheduling midlet midp java-me

0
推荐指数
1
解决办法
7816
查看次数

如何解决“未初始化的常数发条(NameError)”

我安装成功 gem clockwork

C:\web>gem install clockwork
Successfully installed clockwork-0.2.3
1 gem installed
Installing ri documentation for clockwork-0.2.3...
Installing RDoc documentation for clockwork-0.2.3...
Run Code Online (Sandbox Code Playgroud)

但是当运行简单的脚本时

require 'rubygems'
require 'clockwork'
include Clockwork

every(1.minute, 'custom.event.handler' ) do
  puts "This event has its own handler - #{Time.new.strftime("%Y%m%d%H%M%S")}"
end
Run Code Online (Sandbox Code Playgroud)

我得到这个错误

C:\web>ruby clockwork.rb
./clockwork.rb:3: uninitialized constant Clockwork (NameError)
        from C:/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`gem_original_require'
        from C:/Ruby187/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in
`require'
        from clockwork.rb:2
Run Code Online (Sandbox Code Playgroud)

任何建议如何使发条工作

  • Windows XP
  • 红宝石1.8.7(2010-08-16补丁程序级别302)[i386-mingw32]
  • 宝石1.3.7

C:\ web> gem列表--local

*** LOCAL GEMS ***

aaronh-chronic (0.3.9)
activesupport (3.0.9)
backports (1.18.2)
clockwork (0.2.3)
daemons …
Run Code Online (Sandbox Code Playgroud)

ruby rubygems scheduling

0
推荐指数
1
解决办法
898
查看次数

死码警告

while(true){
    try 
    {
        if(Calendar.DATE == X){
            startTask();
        } 
        long delay = timeUntilNextCheck();
        Thread.sleep(delay);
    } 
    catch (Throwable t) 
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个程序,需要在一个月的特定日期运行特定任务.在任务运行之后(或者如果它不是那天),线程会一直睡到明天它将再次检查.

但是,我收到了死代码警告,因为部分代码仅在该月的特定日期运行.

我已经阅读了这个警告是什么,我发现在某些情况下编译器不会编译死代码.所以我的问题是,这总是会被编译吗?

java scheduling date dead-code

0
推荐指数
2
解决办法
535
查看次数

安排计时器每月执行一次 - C#

我需要每月一次将一些数据从SQL Server传输到MySQL.我已经完成了这个转移的东西,但我不知道(我还没有在互联网上找到)如何设置一个定时器,每个月在特定日期执行此转移.我不想仅以毫秒为单位设置定时器间隔,因为天数从一个月到另一个月不等.

任何帮助表示赞赏......

c# scheduling timer scheduler scheduled-tasks

0
推荐指数
1
解决办法
2163
查看次数

指向具有不同参数的成员函数的指针的容器

我到处寻找(Modern C++ design&co),但我找不到一种很好的方法来存储一组接受不同参数并在不同类上运行的回调.我需要这个,因为我希望我的应用程序的每个对象都有可能将其中一个方法的执行推迟到一个主Clock对象,跟踪当前时间,可以在正确的时刻调用这些方法.我的目标代码是:

void executeAction1Deferred(int time, int arg1, bool arg2)方法中class1,时间是将来需要的执行时间,应该是这样的:

Clock::defer(time, Class1::action1, this, arg1, arg2);
Run Code Online (Sandbox Code Playgroud)

Clock::defer(??? what signature ????)表示此任务的对象中,存储在优先级队列中,其中时间是密钥.对于每个Clock量程,然后遍历任务列表,并且将执行需要在该量程中运行的任务.请注意,我使用"defer"作为静态函数,因为我打算Clock使用单例的对象,但它也可以是成员函数,它只是选择的问题.

我曾经想过void*用来保存一个可变数量的参数,但让我的action1()方法接受一个void*非常可怕,也因为每次我直接使用这个函数时我都需要为参数创建一个结构而不推迟它.

我过去曾经多次面对这个问题,而且我从未找到过一个非常好的解决方案.请注意,作为一个小型的多平台项目,为缺乏经验的程序员构建简单性可以扩展它是必不可少的,我不想使用boost.但是,我们解决的平台的每个编译器都std::tr1绑定了.问题是:如何定义泛型函数的容器,每个容器接受可变数量的参数(最多N~5),并且是不是从公共虚拟类派生的对象的不同成员方法?谢谢

c++ templates scheduling callback generic-programming

0
推荐指数
1
解决办法
2183
查看次数

OpenMP中静态调度开销的影响

我考虑过哪些因素会影响 OpenMP 中的静态调度开销。在我看来,它受到以下因素的影响:

  • CPU性能
  • OpenMP 运行时库的具体实现
  • 线程数

但我是否错过了进一步的因素?也许任务的大小,...?

此外:开销是否与迭代次数线性相关?在这种情况下,我希望使用静态调度和 4 个内核,开销会随着 4*i 次迭代而线性增加。到目前为止正确吗?

编辑:我只对静态(!)调度开销本身感兴趣。我不是在谈论线程启动开销和花费在同步和临界区开销上的时间。

c++ scheduling overhead openmp

0
推荐指数
1
解决办法
846
查看次数

什么会影响Windows 7/8中Java中的线程调度

我正在测试一个多线程的Java程序.为了调试,我让线程打印出语句.打印输出的顺序如下:

  • 线程消息1
  • 线程消息2
  • 线程消息1
  • 线程消息2

问题是在某台机器上它变为:

  • 线程消息1
  • 线程消息1
  • 线程消息2
  • 线程消息2

该机器与我测试的所有其他机器具有相同的Java版本.起初我认为这是一个Windows 8问题,因为以前的问题有Windows 7,但我在另一台Windows 8机器上尝试过,它运行正常.所以我的问题是其他变量可以影响Java中的线程调度?仅供参考机器的错误序列发生的是Acer Aspire E1-521-0694 AMD双核E2-1800与Windows 8.

java windows multithreading scheduling

-1
推荐指数
1
解决办法
443
查看次数

Cuda中warp调度和warp上下文切换之间的关系

据我了解,就绪的warp是可以在warp调度中执行的warp。等待扭曲正在等待获取或计算源操作数,因此无法执行。Warp 调度程序选择一个准备好的 warp 来执行“warp 调度”。

另一方面,当一个 warp 出现管道停顿或全局内存延迟较长时,另一个 warp 将被执行以隐藏延迟。这就是cuda中“warp上下文切换”的基本思想。

我的问题是:Cuda中的warp调度和warp上下文切换之间有什么关系。为了详细说明我的问题,下面是一个例子。

例如,当warp A 停止时,warp A 是等待获取全局内存的warp,一旦获取元素,warp A 将被调度或切换到就绪warp 池中。基于此,warp上下文切换是warp调度的一部分。这是对的吗?

任何人都可以提供有关 Cuda 中的 warp 上下文切换和 warp 调度的任何参考吗?英伟达似乎没有公开这些文件。

预先感谢您的回复。

cuda gpu scheduling context-switch

-1
推荐指数
1
解决办法
1126
查看次数

哪种技术最适合在 Android 中每分钟更新主屏幕应用程序小部件?

我有两种类型的主屏幕应用程序小部件 1. 由文本视图组成,2. 由列表视图组成。第一个显示来自阵列的数据,第二个从服务器提取信息(即涉及网络操作)。而且它们都需要每分钟更新一次。现在,对于每种情况,以下哪种技术最好?

a) Handler
b) Alarm Manager
c) JobScheduler
d) Firebase JobDispatcher
e) SyncAdapter
f) ..anything else if there is...
Run Code Online (Sandbox Code Playgroud)

作为 Android 初学者,很难决定哪种技术最适合设备的电池寿命。我在这里先向您的帮助表示感谢。

service android scheduling handler alarmmanager

-1
推荐指数
1
解决办法
961
查看次数

什么导致空的 Go for 循环锁定程序?

在我学习 Go 时,我最初使用一个空的 for 循环编写了我的短程序,以阻止程序退出,因为我使用 go 关键字运行了我的测试函数。然而,随着我的测试/学习程序越来越大,整个程序有时会在随机位置冻结,调试器会断开连接,使调试变得非常困难。

我最终从 IRC 上的一些讨论中了解到原因是空的 for 循环,并将其替换为阻塞通道,但除了与 Go 处理调度的方式有关之外,我从未了解原因。

后台是什么机制导致独立的 go-routines 锁定整个程序,即使有很多内核分配给程序,如果有一个空的无限循环?

loops scheduling background-process go

-1
推荐指数
1
解决办法
422
查看次数