当前位置: 首页 > 知识库问答 >
问题:

如何使用多个eclipse rcp作业实现真正的并发

田远
2023-03-14

我有一个eclipse rcp应用程序,它有时可能同时运行多个作业。也有一些情况下,其中一些作业可能需要暂停一段指定的时间。我在调用线程时注意到了这一点。sleep()可以做到这一点,但它似乎对其他工作也有一些不利影响。当我尝试与UI交互时,我甚至会在应用程序的标题上看到(没有响应)。我错误地认为每个作业实例都有自己的线程,但最近发现情况并非如此。在我脑海中,我唯一能想到的就是在每次创建作业时显式创建一个线程实例,然后通过作业将前者设置为后者。setThread()。对此问题的任何反馈都将不胜感激!感谢您抽出时间!

共有1个答案

解修然
2023-03-14

我不建议直接攻击底层线程,因为管理线程池是JobManager的责任,API没有对此做出任何假设。

相反,尝试使用以下作业方法:

#boolean sleep()
#void wakeUp()
#void join()

“在职:Eclipse Jobs API”一文也可能有助于:http://www.eclipse.org/articles/Article-Concurrency/jobs-api.html

 类似资料:
  • 一个spark有一个oracle查询。所以我必须并行运行多个作业,以便所有查询都将同时激发。 如何并行运行多个作业?

  • 问题内容: 我玩了一段时间,发现了一些有趣的东西: 现在,错误显而易见了,将列表转换为元组就可以像开始时一样正常工作: 现在,我的问题是:为什么第 一个参数必须是str或str前缀的元组,而不是 str前缀 的列表 ? AFAIK,其Python代码可能如下所示: 但这让我更加困惑,因为即使记住了它,列表还是元组也应该没有任何区别。我想念什么? 问题答案: 从技术上讲,没有理由不接受其他序列类型。

  • 问题内容: 我有一个需要执行两项操作的功能,一项功能完成得很快,而一项则需要很长时间才能运行。我希望能够将长时间运行的操作委派给线程,并且我不在乎线程何时完成,但是线程需要完成。我实现了如下所示的方法,但是由于函数在start()调用后退出,因此我的第二个操作从未完成。如何确保函数返回但第二个操作线程也完成其执行并且不依赖于父线程? 问题答案: 如果调用了if ,则JVM将运行if 运行它的线程未

  • 问题内容: 为不同语言制作字符串的最佳方法是什么?我有这个问题,我试图显示诸如“ month”,“ months”,“ year”,“ years”之类的字符串。目前,我正在使用三种我知道的语言:西班牙语,英语和波兰语。对于英语和西班牙语,这很简单。但举例来说,波兰语中的“年”可以变成“ lata”(在数字2-4之后)或“ lat”(在5以后的数字之后)。我正在考虑为此添加一个额外的字符串,并在其

  • 我在BatchScheduler中有多个计划作业,它在特定时间运行。简单的内置JobLauncher,这是同步的。在自然界中最初使用。现在,我想并行运行这些作业,这样没有作业可以等待其他作业完成。 我在不同的作业上尝试过@Async注释,但都不起作用。 然后,我尝试设置joblauncher.settaskexecutor(新的SimpleAsyncTaskExecutor())。但这并不奏效。

  • 到目前为止,我正在运行spring批处理,只有一个作业。现在我想运行多个不同的作业,这意味着不同的功能。在我的配置文件中,我配置了两个具有不同id和不同名称的作业。现在我得负责这些工作。你能告诉我怎么跑吗。在这里,我的疑问是在我的java类中,我已经为运行批处理编写了这段代码。 对于其他作业,如何调用jobLauncher的run方法。 我的配置文件是