Java并发编程
国家二级残序员
距离成功,只差一张500W的彩票
展开
-
Future 模式详解(并发使用)
我觉得很多讲Future模式的文章并没有深刻理解Future模式,其实Future模式只是生产者-消费者模型的扩展。经典“生产者-消费者”模型中消息的生产者不关心消费者何时处理完该条消息,也不关心处理结果。Future模式则可以让消息的生产者等待直到消息处理结束,如果需要的话还可以取得处理结果 用过Java并发包的朋友或许对Future (interface) 已经比较熟悉了,其实Future转载 2017-01-16 22:35:02 · 345 阅读 · 0 评论 -
Java创建线程的三种方式
1.继承Thread类,重写run方法。缺点:java是单继承,继承了Thread类,不可继承其他类,不方便扩展。 开发中:少用。public class MyRunnable implements Runnable { @Override public void run() { try { Thread.sleep(1000);原创 2017-01-16 22:32:54 · 288 阅读 · 0 评论 -
java.lang.IllegalThreadStateException异常原因解析
原因是:在程序中一个Thread对象多次调用 .start()方法,就会产生java.lang.IllegalThreadStateException异常。 解决:不要extends Thread ,要 implements Runnable,通过使用匿名对象:如new Thread(new MyThread())).start()。可多次调用。原创 2017-01-17 13:57:52 · 2056 阅读 · 0 评论 -
线程的安全性
文档内容摘自:Java并发编程实战概述 多个线程访问某个类时,不管运行时环境采用何种调度方式或者这些线程将如何交替执行,并且在主调代码中不需要任何额外的同步或协同,这个类始终都能变现出正常的行为,那么就称这个类是线程安全的。 要编写线程安全的代码,其核心在于要对状态访问操作进行管理,特别是对共享的和可变的状态的访问。 “共享”意味着变量可以被多个线程同时访问,而“可变”则意味着变量的值在其生命周原创 2017-01-17 17:24:57 · 1016 阅读 · 0 评论 -
并发编程:volatile 关键字解析
原文出处: 海子 volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。 volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前转载 2017-05-05 14:39:28 · 294 阅读 · 0 评论