mExecutorService
时间: 2024-05-09 16:12:53 浏览: 47
JAVA基础编程题(60题及答案)
mExecutorService是Android中的一个线程池管理器,它可以对线程进行管理和调度。通过mExecutorService,你可以创建线程池、添加任务、取消任务、等待任务完成和获取任务的执行结果等。以下是mExecutorService的基本用法:
1.创建一个线程池
```java
ExecutorService mExecutorService = Executors.newFixedThreadPool(2);
```
这里我们创建了一个可以同时执行2个任务的线程池。
2.提交任务
```java
mExecutorService.submit(new Runnable() {
@Override
public void run() {
// 执行任务
}
});
```
这里我们提交了一个Runnable类型的任务,任务会在一个空闲的线程中执行。
3.取消任务
```java
Future<?> future = mExecutorService.submit(new Runnable() {
@Override
public void run() {
// 执行任务
}
});
future.cancel(true);
```
这里我们提交了一个Runnable类型的任务,并通过Future对象获取了该任务的执行结果。如果我们想要取消该任务,可以调用future.cancel(true)方法。
4.等待任务完成和获取任务的执行结果
```java
Future<String> future = mExecutorService.submit(new Callable<String>() {
@Override
public String call() throws Exception {
// 执行任务
return "Task Result";
}
});
try {
String result = future.get();
// 处理结果
} catch (InterruptedException e) {
e.printStackTrace();
} catch (ExecutionException e) {
e.printStackTrace();
}
```
这里我们提交了一个Callable类型的任务,并通过Future对象获取了该任务的执行结果。通过future.get()方法可以等待任务完成并获取任务的执行结果。
阅读全文