我需要在一个电话和另一个电话之间进行一些等待。
问题是这种等待将在库中进行,因此在其中放置Thread.sleep()不是一个好习惯。不涉及任何摇摆,该库是jna接口。
所以..是否有其他适合我的情况?
最佳答案
您可以使用ScheduledThreadPoolExecutor。例如:
ScheduledExecutorService scheduledExecutorService =
Executors.newScheduledThreadPool(1);
ScheduledFuture scheduledFuture =
scheduledExecutorService.schedule(new Callable() {
public Object call() throws Exception {
System.out.println("Executed!");
return "Called!";
}
},
5,
TimeUnit.SECONDS);
首先,使用一个线程创建一个
ScheduledExecutorService
。然后,创建
Callable
接口的匿名实现并将其传递给schedule()
方法。最后两个参数指定Callable
应在5秒钟后执行。关于java - Thread.sleep()可以替代吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22918059/