使用线程池的好处:重用线程,线程的创建和销毁是很耗时的。控制线程的数量。线程池工具类:ThreadPool.javapackagecom.zws.thread.pool;
importjava.util.concurrent.Callable;
importjava.util.concurrent.Future;
/**
*
*@authorwensh.zhu
*
*/
publicinterfaceThreadPool{..
分类:
编程语言 时间:
2017-07-30 23:41:27
阅读次数:
501
下面这段测试代码,如果取消第一个future.get的注释,也就是说等第一次submit提交的任务执行完成后,再提交同一个任务,再次提交的任务并不会得到执行,因为此时callable的status已经不是NEW了。但如果将第一个future.get注释掉,也就是在第一次submit提交的任务完成前, ...
分类:
编程语言 时间:
2017-07-30 16:54:08
阅读次数:
201
ORM(Object Relational Mapping,对象关系映射),是一种程序设计技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。从效果上来说,它其实创建了一个可在编程语言里使用的“虚拟对象数据库”。 上面是维基百科的解释,但是为什么要用ORM这种编程技术呢? 就这个实战作业来 ...
分类:
其他好文 时间:
2017-07-29 22:19:09
阅读次数:
153
java.util.concurrent包中的ThreadPoolExecutor,提供了java语言的线程池,你可以提交一个返回结果的任务(submit(Callable),返回Future),或者执行一个不返回结果的任务(execute(Runnable)),但提交的任务可能会抛异常,这就需要处 ...
分类:
其他好文 时间:
2017-07-26 00:19:45
阅读次数:
161
package concurrency; import java.util.ArrayList; import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.uti... ...
分类:
编程语言 时间:
2017-07-25 01:04:55
阅读次数:
215
Java多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。 1、继承Thread类实现多线程继承Thread类的方法尽管被 ...
分类:
编程语言 时间:
2017-07-22 19:44:03
阅读次数:
172
http://www.cnblogs.com/aheizi/p/5659030.html 1-介绍 Servlet 3中的异步支持为在另一个线程中处理HTTP请求提供了可能性。当有一个长时间运行的任务时,这是特别有趣的,因为当另一个线程处理这个请求时,容器线程被释放,并且可以继续为其他请求服务。这个 ...
分类:
编程语言 时间:
2017-07-22 00:08:48
阅读次数:
686
多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括: Java线程具 ...
分类:
编程语言 时间:
2017-07-19 01:15:15
阅读次数:
263
创建线程的两种方法: 1、继承Thread类,并重写Thread类的run方法 2、实现接口Runnable的run方法。 注意:另外还有一种创建线程的方法笔者没有指出,使用线程池方式—Callable接口。Callable接口实现类,call方法可抛出异常、返回线程任务执行完毕后的结果。 面试问题 ...
分类:
编程语言 时间:
2017-07-18 01:31:17
阅读次数:
198
Java并发编程:Callable、Future和FutureTask ...
分类:
编程语言 时间:
2017-07-16 17:22:51
阅读次数:
177