youyichannel

志于道,据于德,依于仁,游于艺!

0%

Executor框架03

Executor框架的使用

  1. 主线程首先要创建实现 Runnable 或者 Callable 接口的任务对象。工具类 Executors 可以把一个 Runnable 对象封装为一个 Callable 对象(Executors.callable(Runnable task)Executors.callable(Runnable task,Object result))。
  1. 然后可以把 Runnable对象直接交给ExecutorService执行(ExecutorService.execute (Runnable command));或者也可以把Runnable对象或Callable对象提交给ExecutorService执行(ExecutorService.submit(Runnable task)ExecutorService.submit (Callable<T>task))。

  2. 如果执行ExecutorService.submit(...)ExecutorService将返回一个实现 Future接口的对象(在JDK8中,返回的是FutureTask对象)。由于FutureTask实现了 Runnable,开发者也可以创建FutureTask,然后直接交给ExecutorService执行。

  3. 最后,主线程可以执行FutureTask.get()方法来等待任务执行完成。主线程也可以执行 FutureTask.cancel(boolean mayInterruptIfRunning)来取消此任务的执行。