我正在尝试实现一种方法,该方法可以连续运行 SQL 查询,直到它返回结果或在 x 秒后失败。
目前我的方法使用CountDownLatch:
final CountDownLatch done = new CountDownLatch(1);
new Thread(new Runnable()
{
@Override
public void run() {
try
{
getQueryResults(sql);
}
catch (Exception e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
done.countDown();
}
}).start();
return done.await(30, TimeUnit.SECONDS);
有没有更好的方法来做到这一点?