线程同步通信技术
同步通信: 是相对于前一篇线程互斥来说的
要用到共同数据(包括同步锁 synchronized 对象)的若干个方法应该归在同一个类身上,这种设计正好体现了高类聚和程序的健壮性
-------------------------------------
线程范围内共享变量的概念与作用
一 假设有三个线程,它们都访问了三个对象,第一个对象设置值,第二,三个对象取值,同一个线程设置的值,只能被相同的线程获取.
具体代码参见 ThreadCourse 工程中 ThreadScopeShareData.java 文件
二 也可以使用ThreadLocal 实现线程范围内的共享变量
ThreadLocal 的应用场景:
订单处理包含一系列操作: 减少库存量、增加一条流水台帐、修改总帐,这个操作要在同一个事务中完成,通常就是在同一个线程中进行处理,如果 公司应收款的操作失败了,则应该把前面的操作回滚,否则,提交所有操作,要求这些操作使用相同的数据库连接对象,而这些操作的代码分别位于不同的模块类中。