- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我在我的 Activity
中使用了一个 CountDownTimer
来实现一些倒计时功能。我决定放弃 CountDownTimer
并使用 ScheduledThreadPoolExecutor
因为 CountDownTimer
无法在 onTick()
中自行取消.
由于某些原因,下面代码中我的Runnable
只执行了一次。我不确定为什么它不执行多次。 destroyCountdownTimer()
函数没有被命中。
private ScheduledThreadPoolExecutor mCountdownTimer;
private Tick mTick;
class Tick implements Runnable {
@Override
public void run() {
Log.e("tick", String.valueOf(mAccumulatedMilliseconds));
mAccumulatedMilliseconds += 1000;
populateTimeAccumulated();
populateTimeRemaining();
updatePercentages();
if (mTotalMilliseconds <= mAccumulatedMilliseconds) {
destroyCountdownTimer();
}
}
}
private void startCountdown() {
if (mAccumulatedMilliseconds < mTotalMilliseconds) {
mCounterIsRunning = true;
if (mCountdownTimer == null) {
mCountdownTimer = new ScheduledThreadPoolExecutor(1);
}
if (mTick == null) {
mTick = new Tick();
}
mCountdownTimer.scheduleAtFixedRate(mTick, 1000, 1000, TimeUnit.MILLISECONDS);
}
}
private void destroyCountdownTimer() {
if (mCountdownTimer != null) {
mCountdownTimer.shutdownNow();
mCountdownTimer = null;
}
if (mTick != null) {
mTick = null;
}
}
最佳答案
If any execution of the task encounters an exception, subsequent executions are suppressed.
将 try-catch block 添加到您的 Tick runnable。
关于android - ScheduledThreadPoolExecutor 只有 "ticking"一次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29522243/
我有一个 Visual Studio 2008 解决方案,当我构建时,它返回以下错误: Ticks must be between DateTime.MinValue.Ticks and DateTi
我正在 Xv6 上做操作系统类(class)的作业.我需要为其创建时间、终止时间、休眠时间等实现一个进程的数据状态结构... 到目前为止,我决定直接使用 ticks 变量而不使用 tickslock,
我可以删除刻度标签: ax.axes.get_yaxis().set_visible(False) 但这也消除了滴答声。我想保留蜱虫。 最佳答案 只需使用一个NullFormatter ax = pl
我正在处理刻度数据,并希望将我的 xts 不规则间隔系列聚合成一个 1 秒的同质系列。因此,我使用 xts 包函数 to.period : price_1m <-to.period(price,per
在 C# System.Windows.Forms.Timer 中,如果计时器节拍内的代码计算时间比节拍长度长,会发生什么情况? 例如,在下面的代码中,如果更新标签的时间比滴答的时间间隔(1 秒)长,
如何通过逐笔报价数据对我的逐笔报价进行重新采样以获取 Candlesticks OHLC 数据。 这是我的数据在 pandas DataFrame 中的样子。 Timestamp
这是对 this 的跟进问题,作者想要不同的刻度和刻度标签颜色。我想将这些设置保存为 Matplotlib 样式。但在 Matplotlib 样式中,我只能设置刻度颜色(xtick 设置见下文),这会
我想在日期时间 X 轴上显示每月刻度。我使用下面的代码实现了这一点。 DateAxis dateAxis = (DateAxis)chart.getXYPlot().getDomainAxis();
我是业余时间的 Java 开发者,我只是想知道 level.tick() 和 Level.tick(level) ('Level' 是类的名称,'level' 是该类的对象) 我知道,由于 java
我正在实现时间轴功能并使用 d3.time.scale D3 中的对象来制作一个轴。这是代码: var t = 1066555; var xd = [new Date(t-10000), new Da
我有一个具有旋转动画的自定义 View (PieView)。现在我想与旋转速度同步播放滴答滴答滴答...声音(即当旋转速度快时,滴答声应该快,当旋转慢时,滴答声应该快)滴答滴答应该很慢)。为此,我首先
我正在制作一个分层图表,其中有条形图和规则线。我遇到的问题是,在 x 轴上,刻度线和刻度标签只出现在条形图下方,不会跨越整个轴,因此在规则线下方没有刻度线和标签位于。这是我所看到的示例 ( link
我有一个histogram with centered bin-ticks 。 如图所示,每个 bin-tick 的编号标签彼此非常接近,以至于数字不像我希望的那样清晰。我想在我的图中保留居中的垃圾箱
我正在制作玩具熊的五夜后宫的“粉丝游戏”。在我开始收到此错误之前,我的代码工作正常: File "C:\Users\Admin\Desktop\Python\Five Nights\Five Nigh
这很简单,但我不明白...... 我正在尝试设定一个时间。每秒滴答一次...但它每 2 秒滴答一次?!? package main import ( "fmt" "time" ) fu
我正在以日期时间刻度格式存储 Azure 表存储行键 String.Format("{0:D19}", DateTime.MaxValue.Ticks - DateTime.UtcNow.Ticks)
What is the correct way to multiply and divide ints in C to avoid overflow? I want to determine h
我在 javascript 和 node.js 事件循环中看到了“tick”的不同定义。 有人说这是贯穿所有阶段的第 1 次迭代事件循环。 有人说阶段和阶段之间的过渡另一个是蜱虫。 有人说它是一个事件
我试图让我的模型对时钟滴答作响,以便做一些动画,例如 elm 架构教程的示例 8(旋转立方体)。 https://github.com/evancz/elm-architecture-tutorial
我创建了一个应用程序,它播放小轨道的播放列表,一切正常,直到 Windows Phone 8.1 更新 问题是 -> 轨道结束时有奇怪的滴答声” 所以我尝试在 xbox 音乐播放器中播放轨道它也有相同
我是一名优秀的程序员,十分优秀!