问题标签 [scheduledexecutorservice]

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 回答
1519 浏览

android - 无法从 WindowManager 中删除视图 - 多个线程

我在从 WindowManager 中删除视图时遇到问题。这是我要调用的方法:

从在 onCreate 中初始化的 onChange 方法调用时,它可以完美运行。

但是,从这里调用它会失败,也在 onCreate 中初始化。

我不能从另一个线程调用 updateDockNow 吗?为什么它在一种情况下有效,而在另一种情况下无效?

注意:这不是从 Activity 运行的,而是从 Service 运行的。

谢谢

- 回答 -

0 投票
1 回答
3206 浏览

java - 如何在取消时等待(固定费率)ScheduledFuture 完成

是否有一种内置方法可以取消以Runnable固定速率安排的任务,ScheduledExecutorService.scheduleAtFixedRate如果在调用取消时它恰好正在运行,则等待它的完成?

考虑以下示例:

这个程序的输出是:

设置一个共享的 volatile 标志似乎是最简单的选择,但如果可能的话,我宁愿避免它。

java.util.concurrent 框架是否内置了此功能?

0 投票
2 回答
482 浏览

java - Java ScheduledExecutorService 标准实践

我在 J2EE 应用程序中使用 ScheduledExecutorService 来安排每 x 秒从配置文件中获取的任务(从数据库中获取数据并将它们发送到外部服务器)。我的代码是:

我的问题是我应该编写任何额外的代码吗?我应该写一个while循环来确保线程完成然后为我做一个service.shutdown()或确实ScheduledExecutorService照顾它吗?

0 投票
1 回答
10808 浏览

android - android 中的 ScheduledExecutorService 或 AlarmManager 哪个更好?

我是一个初学者,我正在开发一个 android 应用程序,它将在一定的延迟后(以天为单位)继续向用户发送 SMS。我希望用户一旦注册就应该收到 SMS,而不管他是否已登录在与否。短信内容和手机号码是从数据库中获取的。所以经过研究我发现了两种方法

  1. ScheduledExecutorService

  2. 报警管理器

问题是当手机关机或重启时,alarmManager 会关闭。ScheduledExecutorService 也是这种情况吗?在使用 Executor Service 时,我应该在 ThreadPool 中使用多少个线程?

0 投票
1 回答
2233 浏览

java - 在 Executors 中从内部取消任务或在超时后从外部取消

好的,所以我花了一些时间环顾四周,但未能找到明确的解决方案。我之前发布了一个单独的问题,但这是一个有点不同的问题。

问题:我想轮询定期发生的情况。如果该条件仍然为假,请再次重新安排。如果为真,则停止调度。但我也只想等待一些确定的时间。这是我写的

这会不断重新安排自己,直到满足条件。关于为什么它不起作用的任何建议?如何只等待 5 秒然后停止任务执行?

0 投票
1 回答
323 浏览

jsf - 在没有任何 HTTP 请求的情况下在调度的执行器中实例化请求范围的 bean

在一个 JSF 2.2 webapp 中,我有一个计划的线程执行器服务,它定期执行一些代码,这些代码需要实例化一个请求范围的 bean 来执行一些任务。如何在没有来自任何客户端的任何 http 请求但来自应用程序范围的 bean 的情况下实例化请求范围的 bean。

当我尝试:

NamesDirectory请求范围的bean在哪里,我得到NullPointerException

0 投票
1 回答
5498 浏览

android - ScheduledExecutorService 在 Service 内只运行一次

ScheduledExecutorService在我的服务内部运行,它在后台拍摄图像。ScheduledExecutorService只运行一次意味着在函数传入的时间间隔后只拍摄一张照片。完全没有显示错误。以下是我的代码Service

没有 Logcat,因为没有收到任何错误。拍照后服务也在运行。我做错了什么?

0 投票
0 回答
233 浏览

java - java.util.concurrent.ScheduledExecutorService 在不同计算机上的性能

我有 2 个 Java 程序。每个都有一个内存区域,程序将消息传递到彼此的内存区域。Java程序在一定的时间段内,即5毫秒,用ScheduledExecutorService检查它的内存区域。然后它进行一些转换并将消息打印到屏幕上。两个程序成功运行并将消息打印到屏幕(我已经实现了所有与 JNI 相关的东西并且程序成功运行)。问题是当我在我的计算机上启动这些程序(Windows 8、64 位、8gb 内存、2.67 Ghz i5 处理器)时,它们运行得非常快。但是,当我使用完全相同的本机 c++ 库运行这些完全相同的程序时,在不同的计算机上它们运行速度较慢. 更有趣的是,我尝试在具有 32 gb ram、i7 处理器的更好计算机和具有 6 gb ram 和 64 位双核 cpu 的更差计算机上运行它们,但它们仍然运行得更慢。因此,另一台具有比我的计算机更好或更差功能的计算机对程序的速度无关紧要。我所看到的它们在其他计算机上运行速度较慢。

任何帮助表示赞赏。谢谢。

0 投票
1 回答
1189 浏览

java - ScheduledExecutorService 仅使用 switch 语句执行一次

我有一个对我来说很奇怪的问题。我实现了Runnable, 来执行ScheduledExecutorService。问题是,它只执行一次......

这是有用的代码(ev是一个枚举):

有趣的是,如果我用一些 if-else 语句替换那个开关,它工作正常,这意味着这个 Runnable 按照我的要求每 50 毫秒执行一次......!

这是调度设置:

为什么 Runnable 每 50ms 用 if-else 语句调用一次,为什么只用 switch 调用一次?

编辑:因为你问,这里是 MenuEvents 和 ev 的声明:

是的,ENUM_LAST我试图重现 C 约定,但在那里我也将它用作一种NULL价值。

0 投票
8 回答
78279 浏览

java - scheduleAtFixedRate 与 scheduleWithFixedDelay

ScheduledExecutorServicescheduleAtFixedRatescheduleWithFixedDelay方法之间的主要区别是什么?

它们打印完全相同的时间,似乎它们以完全相同的间隔执行。