Thread
文章平均质量分 79
chaijuntao
这个作者很懒,什么都没留下…
展开
-
Java 多线程-基础(Thread篇)
什么是多线程? 在进入正题前,我们还是先来问两个问题,什么叫“多线程”? 以及“Java多线程”跟“多线程”有什么联系? 好吧,问题看似简单但也抽象,想要搞清楚答案,我们还是回到现实生活中找找答案吧。 现在两小夫妻就驰骋在一条单向四车道的草原高速公路上,去60公里外的A城办结婚证,车很多但至少能保持120码全速行驶,贼爽了!不到半...原创 2015-05-14 15:42:06 · 131 阅读 · 0 评论 -
Java多线程-基础(Runnable篇)
上一讲中我们提到了继承Thread类是实现多线程的一种方式,那么现在就来看看第二种方式:Runnable接口。 废话少说,上代码(依旧是之前的例子): public class ThreadDemoOne implements Runnable { int no,workno,sleeptime; public ThreadDemoOne(int no,int workno,...原创 2015-05-14 16:50:57 · 99 阅读 · 0 评论 -
java线程互斥&同步(一)
Java线程互斥和同步一直是一个较难理解透彻的东西,要弄清楚其本真,还是要先从概念入手: 1、线程之间通过对资源的竞争,包括共享的数据和硬件资源,所产生的相互制约关系,这类线程间的主要问题是互斥和死锁问题,这类关系被称为互斥关系。2、线程之间的相互协同合作,彼此之间直接知道对方的存在,并了解对方的名字,这类进程常常需要通过“进程间通信”方法来协同工作,这类关系被称为同步关系。 概念读...原创 2015-06-09 17:32:37 · 441 阅读 · 0 评论 -
java线程互斥&同步(二)
这一次,来探讨下线程间同步的问题,网上很多小伙伴讲到同步,自然而然会说synchronized,但是synchronized英文翻译的确是“同步的”,但此同步非彼同步,synchronized关键字其实实现的是对于一个共享资源的加锁操作,确保这个共享资源同一时间内只被一个对象(线程)进行操作,这是我们前一节所说的线程间互斥,所以synchronized并非实现了线程间同步。 ...原创 2015-06-10 17:17:01 · 111 阅读 · 0 评论 -
Callable、Future和FutureTask
创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果需要获取执行结果,就必须通过共享变量或者使用线程通信的方式来达到效果,这样使用起来就比较麻烦。 而自从Java 1.5开始,就提供了Callable和Future,通过它们可以在任务执行完毕之后得到任务执行结果。 ...原创 2016-03-29 11:42:30 · 80 阅读 · 0 评论