多线程-多线程方式3的思路及代码实现:方式3依赖于线程池存在的

来源:互联网 发布:全知视角和有限视角 编辑:程序博客网 时间:2024/06/03 20:50
package cn.itcast_09;import java.util.concurrent.Callable;//Callable:是带泛型的接口。//这里指定的泛型其实是call()方法的返回值类型。public class MyCallable implements Callable {@Overridepublic Object call() throws Exception {for (int x = 0; x < 100; x++) {System.out.println(Thread.currentThread().getName() + ":" + x);}return null;}}
package cn.itcast_09;import java.util.concurrent.ExecutorService;import java.util.concurrent.Executors;/* * 多线程实现的方式3: *  A:创建一个线程池对象,控制要创建几个线程对象。 * public static ExecutorService newFixedThreadPool(int nThreads) * B:这种线程池的线程可以执行: * 可以执行Runnable对象或者Callable对象代表的线程 * 做一个类实现Runnable接口。 * C:调用如下方法即可 * Future<?> submit(Runnable task) *<T> Future<T> submit(Callable<T> task) *D:我就要结束,可以吗? *可以。 */public class CallableDemo {public static void main(String[] args) {//创建线程池对象ExecutorService pool = Executors.newFixedThreadPool(2);//可以执行Runnable对象或者Callable对象代表的线程pool.submit(new MyCallable());pool.submit(new MyCallable());//结束pool.shutdown();}}



阅读全文
0 0
原创粉丝点击