如何在 android 工作室中 运行 特定时间的线程
how to run a thread for a specific time in android studio
我正在使用线程 运行 我的数据库连接检查
我希望此线程在特定时间 运行,
我尝试使用倒数计时器 class,但没有用,请帮忙。
您可以使用 ExecutorService 并执行如下操作:
public class ExampleClass {
public static void main(String[] args) throws Exception {
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<String> future = executor.submit(new DatabaseConnection());
try {
future.get(3, TimeUnit.SECONDS);
} catch (InterruptedException e) {
...
} catch (ExecutionException e) {
...
} catch (TimeoutException e) {
// do something in case of timeout
future.cancel(true);
}
executor.shutdownNow();
}
}
class DatabaseConnection implements Callable<String> {
@Override
public String call() throws Exception {
while (!Thread.interrupted()) {
// Perform your task here, e.g. connect to your database
}
return "Success";
}
}
这样您就可以在另一个线程上执行任务,超时时间任意。在上面的代码片段中,设置了三秒的超时。
我正在使用线程 运行 我的数据库连接检查 我希望此线程在特定时间 运行, 我尝试使用倒数计时器 class,但没有用,请帮忙。
您可以使用 ExecutorService 并执行如下操作:
public class ExampleClass {
public static void main(String[] args) throws Exception {
ExecutorService executor = Executors.newSingleThreadExecutor();
Future<String> future = executor.submit(new DatabaseConnection());
try {
future.get(3, TimeUnit.SECONDS);
} catch (InterruptedException e) {
...
} catch (ExecutionException e) {
...
} catch (TimeoutException e) {
// do something in case of timeout
future.cancel(true);
}
executor.shutdownNow();
}
}
class DatabaseConnection implements Callable<String> {
@Override
public String call() throws Exception {
while (!Thread.interrupted()) {
// Perform your task here, e.g. connect to your database
}
return "Success";
}
}
这样您就可以在另一个线程上执行任务,超时时间任意。在上面的代码片段中,设置了三秒的超时。