阅读背景:

[JCIP笔记] (三)如何设计一个线程安全的对象

来源:互联网 

当我们谈论线程安全时,我们在谈论什么中,我们讨论了怎样通过Java的synchronize机制去避免几个线程同时访问一个变量时发生问题。忧国忧民的Brian Goetz大神在多年的开发过程中,也悟到了人性的懒惰,他深知许多程序员不会在设计阶段就考虑到线程安全,只是假设自己的代码能按照自己的想法很好地运转。然而当程序上线、线程安全问题真的发生时,要花费多于前期设计数倍的时间和精力去进行排查、解决,甚至重新设计。于是,他在字里行间一直秉持一种“凡事皆可发生”的小心翼翼的哲学,并以这种哲学努力影响读者。或许我们在设计一个类时,对类中的各个域的访问修饰符并不会过多地进行思考,对于构造函数也只是按照IDE的提示顺手一填了事;当我们设计一个boolean类型作为线程是否应该睡眠的flag时,或许也不会立马想到可能需要把它设置为volatile。Brian Goetz大神花了整整十四页密密麻麻的英文告诉你,设计时懒得花时间思考的问题,总有一天代码会逼你想得更加透彻。中,我们讨论了怎样通过Java的synchronize机




你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: