http://www.ibm.com/developerworks/cn/java/j-jtp06197.html volatile
http://www.ibm.com/developerworks/cn/java/j-lo-forkjoin/index.html JDK7的并发
http://www.ibm.com/developerworks/cn/java/j-jtp11137.html JDK7的并发
http://www.ibm.com/developerworks/cn/xml/x-xstream/index.html 序列化成XML
http://www.ibm.com/developerworks/cn/java/j-lo-timer/index.html 计时器
锁无关(Lock free)算法,顾名思义,即不牵涉锁的使用。这类算法可以在不使用锁的情况下同步各个线程。对比基于锁的多线程设计,锁无关算法有以下优势:
- 对死锁、优先级倒置等问题免疫:它属于非阻塞性同步,因为它不使用锁来协调各个线程,所以对死锁、优先级倒置等由锁引起的问题免疫;
- 保证程序的整体进度:由于锁无关算法避免了死锁等情况出现,所以它能确保线程是在运行当中,从而确保程序的整体进度;
- 性能理想:因为不涉及使用锁,所以在普遍的负载环境下,使用锁无关算法可以得到理想的性能提升。
http://www.ibm.com/developerworks/cn/java/j-lo-lockfree/index.html 锁无关
http://www.ibm.com/developerworks/cn/java/j-zerocopy/index.html nio
http://www.ibm.com/developerworks/cn/java/j-lo-bati18n/index.html Locale
http://www.ibm.com/developerworks/cn/java/j-lo-mtrat/index.html 多线程的分析工具
http://www.ibm.com/developerworks/cn/java/j-lo-synchronized/index.html 同步机制
http://www.ibm.com/developerworks/cn/java/j-nativememory-linux/index.html 内存耗尽
http://www.ibm.com/developerworks/cn/java/j-lo-pos/index.html Socket 打印机
http://www.ibm.com/developerworks/cn/java/j-lo-hash/index.html Hash的存储
http://www.ibm.com/developerworks/cn/java/j-lo-jacob/index.html java与COM
http://www.ibm.com/developerworks/cn/java/j-lo-jvmti/index.html 线程的监控
http://www.ibm.com/developerworks/cn/java/j-jodatime.html 一个时间库
http://www.ibm.com/developerworks/cn/java/j-lo-hotswapcls/index.html 热替换
http://www.ibm.com/developerworks/cn/java/j-lo-ical4j/index.html 日历数据标准
http://www.ibm.com/developerworks/cn/java/j-lo-tree/index.html 红黑树实现
http://www.ibm.com/developerworks/cn/java/j-lo-test-multithread/index.html 多线程的单元测试
http://www.ibm.com/developerworks/cn/java/j-5things4.html 并发包
http://www.ibm.com/developerworks/cn/java/j-5things5.html 并发包
http://www.ibm.com/developerworks/cn/java/j-lo-decoupling/index.html 解耦
http://www.ibm.com/developerworks/cn/java/j-5things15/index.html 多线程
http://www.ibm.com/developerworks/cn/java/j-concurrencybugpatterns/index.html 多核并发缺陷模式
http://www.ibm.com/developerworks/cn/java/java-lo-concurrenthashmap/index.html 并发HashMap
一个线程的失败和挂起不会引起其他些线程的失败和挂起,这样的算法称为非阻塞算法。非阻塞算法通过使用底层机器级别的原子指令来取代锁,从而保证数据在并发访问下的一致性。
http://www.ibm.com/developerworks/cn/java/j-lo-concurrent/index.html 并发包
http://www.ibm.com/developerworks/cn/java/j-lo-googlecollection/index.html 一个集合框架
http://www.ibm.com/developerworks/cn/java/j-lo-taskschedule/index.html 任务调度
http://www.ibm.com/developerworks/cn/java/j-fv/index.html finalizer漏洞
http://www.ibm.com/developerworks/cn/java/j-lo-i18ndate/index.html 一个国际化库
http://www.ibm.com/developerworks/cn/java/j-lo-sockettomainframe/index.html socket与IBM主机
http://www.ibm.com/developerworks/cn/java/j-javaactors/index.html 一个并发库
http://www.ibm.com/developerworks/cn/java/j-javaactors/sidefile.html
http://www.ibm.com/developerworks/cn/java/j-lo-12amor12pm/index.html 12时是几点
http://www.ibm.com/developerworks/cn/java/j-nothreads/index.html 多核的并发
http://www.ibm.com/developerworks/cn/java/j-lo-jdk7-1/index.html JDK7
http://www.ibm.com/developerworks/cn/java/j-lo-logforperf/index.html 程序监控
http://www.ibm.com/developerworks/cn/java/j-lo-commandline/index.html 命令行交互程序
http://www.ibm.com/developerworks/cn/java/j-lo-processthread/index.html 进程与线程的具体实现与限制,start与run
通常,有以下三类方法可以降低锁的竞争:减少持有锁的时间,降低请求锁的频率,或者用其他协调机制取代独占锁。
http://www.ibm.com/developerworks/cn/java/j-lo-lock/index.html 关于锁
http://www.ibm.com/developerworks/cn/java/j-lo-concurrent-frmk/index.html 并发控制框架
当一个方法抛出 InterruptedException
时,它是在告诉您,如果执行该方法的线程被中断,它将尝试停止它正在做的事情而提前返回,并通过抛出 InterruptedException
表明它提前返回。行为良好的阻塞库方法应该能对中断作出响应并抛出 InterruptedException
,以便能够用于可取消活动中,而不至于影响响应。
如果不能重新抛出 InterruptedException
,不管您是否计划处理中断请求,仍然需要重新中断当前线程,
http://www.ibm.com/developerworks/cn/java/j-jtp05236.html InterruptedException的处理