A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

ExecutorService pool = Executors.newSingleThreadExecutor();
ExecutorService是一个接口。那么pool变量是什么。。
List list = new ArrayList(); 这里面list可以直接调用List接口的方法。。但是这里不是很清楚。。。


java.util.concurrent.Executors
public class Executorsextends Object此包中所定义的 ExecutorExecutorServiceScheduledExecutorServiceThreadFactoryCallable 类的工厂和实用方法。此类支持以下各种方法:
  • 创建并返回设置有常用配置字符串的 ExecutorService 的方法。
  • 创建并返回设置有常用配置字符串的 ScheduledExecutorService 的方法。
  • 创建并返回“包装的”ExecutorService 方法,它通过使特定于实现的方法不可访问来禁用重新配置。
  • 创建并返回 ThreadFactory 的方法,它可将新创建的线程设置为已知的状态。
  • 创建并返回非闭包形式的 Callable 的方法,这样可将其用于需要 Callable 的执行方法中。


Executors是一个类。 他的方法newSingleThreadExecutor()为甚么,返回类型是一个接口类型。。????
public static ExecutorService newSingleThreadExecutor()创建一个使用单个 worker 线程的Executor,以无界队列方式来运行该线程。(注意,如果因为在关闭前的执行期间出现失败而终止了此单个线程,那么如果需要,一个新线程将代替它执行后续的任务)。可保证顺序地执行各个任务,并且在任意给定的时间不会有多个线程是活动的。与其他等效的 newFixedThreadPool(1) 不同,可保证无需重新配置此方法所返回的执行程序即可使用其他的线程。 返回:新创建的单线程 Executor这个是Pool 直接调用Executor的 execute()方法。内部实现Runnable()接口并使用内部类吗pool.execute(new Runnable(){                                                //车上到路上不断产生车                        public void run() {                                for(int i=1;i<1000;i++){                                        try {        //随机值                                                Thread.sleep((new Random().nextInt(10) + 1) * 1000);                                        } catch (InterruptedException e) {                                                e.printStackTrace();                                        }                                        vechicles.add(Road.this.name+"_"+i);                                 }                        }                                });


评分

参与人数 1技术分 +1 收起 理由
何伟超 + 1

查看全部评分

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马