[英]Thread to execute for specified amount of time.
每30秒将记录存储到SQLite DB中 。
我想在30秒内执行一个线程以将记录数发布到我们的服务器中。
如果线程超过30秒,则自行杀死线程。
使用计时器如下:
Timer t = new Timer();
t.schedule(new TimerTask() {
@Override
public void run() { //timer
System.out.println("done");
this.cancel();
}
}, 30000L);
看一下Handlers ,特别是postDelayed(Runnable, long)
方法。
这是一种轻量级的方法,用于指定将来要运行的某些代码,在这种情况下,您可以将其设置为30 seconds
然后检查有问题的代码是否仍在运行。
(例如,在代码运行时将布尔值设置为true),并通过任何可用的方法将其杀死。
thread.sleep(30000);
将线程休眠30秒。 thread.interrupt();
注意:不要使用thread.stop();
因为它已被弃用。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.