并发编程
文章平均质量分 88
viscent_huang
《Java多线程编程实战指南》系列图书的作者。
博客:viscent.iteye.com
展开
-
[置顶] Java多线程编程模式实战指南(三):Two-phase Termination模式
本文由本人首次发布在infoq中文站上:http://www.infoq.com/cn/articles/java-multithreaded-programming-mode-two-phase-termination。转载请注明作者: 黄文海 出处:http://viscent.iteye.com。 停止线程是一个目标简单而实现却不那么简单的任务。首先,Java没有提供直接的API用于原创 2015-11-18 11:21:32 · 988 阅读 · 0 评论 -
Java多线程编程那些事:锁泄漏
什么是锁泄漏众所周知,我们对锁的使用方式都是用同一个套路——先申请锁,再执行临界区中的代码,最后释放锁,如清单1所示。尽管如此,代码的错误可能导致一个线程在其执行完临界区代码之后未能释放引导这个临界区的锁。例如,清单1中的doSomethingWithLock方法所调用的someIoOperation方法如果在其执行期间抛出了异常(这里是IOException),那么doSomething原创 2017-09-28 11:47:15 · 774 阅读 · 0 评论 -
Java多线程编程那些事:volatile解惑
(本文最初由本人黄文海发表在InfoQ中文站上:http://www.infoq.com/cn)1、 前言volatile关键字可能是Java开发人员“熟悉而又陌生”的一个关键字。本文将从volatile关键字的作用、开销和典型应用场景以及Java虚拟机对volatile关键字的实现这几个方面为读者全面深入剖析volatile关键字。volatile字面上有“挥发性的,不稳原创 2017-10-20 21:12:14 · 551 阅读 · 0 评论 -
Java函数式编程学习笔记(一)
1. 此函数非彼函数在弄清楚什么是函数编程之前,有必要先弄清楚究竟什么是函数这个问题。在面向对象编程中,我们经常将方法称为函数,那么方法与函数究竟是否是同一个东西的不同称呼呢?函数式编程中的“函数”是指数学意义上的函数,不是编程语言中的“函数”。数学上的函数(Function)可以看成一个小机器,给这个机器提供一定的原材料(输入参数),它就会加工出(输出)一定的产品(返回值),如图1所示。...2018-06-17 11:27:34 · 258 阅读 · 0 评论