1:线程池:
2:定时器:1) 线程池的特点,线程执行完毕后,不会变成垃圾,而是会进入线程池中,等待下次调用;可以多次使用,节约成本.
2) 构造方法:通过使用Executors工厂类来获取ExecutorService,(线程池),通过ExecutorService类中的submit()方法,
来给线程池中添加线程,最后调用shutdown()方法,来结束线程池.
3) Callable接口:子实现类需要复写call()方法,且call()是有返回值,Callable和Runnable的区别:就是方法是返回程序的结果.
4) submit(); 参数为Runnable或者Callable的子实现类,它的返回值就是Callable中的结果,返回为一个Futrue类型,
通过get()方法,得到最后的结果.
1) Timer: 可以重复执行或者多少毫秒后执行
2) schedule(TimerTask task,long delay);多少毫秒后开始执行task中的任务,
schedule(TimerTask, long delay, long period); 间隔period毫秒一直执行task中的任务,
cancel(); 结束这个计时器,丢弃当前多有的任务.
3) TimerTask:子类继承并且复写run()方法,
3: 匿名内部类的线程:
1)Thread:
new Thread(){ public void run(){ ... }
}.start();
2)Runnable:
new Thread(new Runnable(){ public void run(){ ... }
}
).start();