今天看啥  ›  专栏  ›  SpringForAll社区

多线程同步的五种方法

SpringForAll社区  · 公众号  ·  · 2020-02-07 08:00
点击上方☝SpringForAll社区 轻松关注!及时获取有趣有料的技术文章本文来源:https://www.cnblogs.com/xiaoxi/p/7679470.html一、为什么要线程同步因为当我们有多个线程要同时访问一个变量或对象时,如果这些线程中既有读又有写操作时,就会导致变量值或对象的状态出现混乱,从而导致程序异常。举个例子,如果一个银行账户同时被两个线程操作,一个取100块,一个存钱100块。假设账户原本有0块,如果取钱线程和存钱线程同时发生,会出现什么结果呢?取钱不成功,账户余额是100.取钱成功了,账户余额是0.那到底是哪个呢?很难说清楚。因此多线程同步就是要解决这个问题。二、不同步时的代码Bank.java 1package threadTest;   2 3/**  4 * @author lixiaoxi  5 *  6 */   7public class Ban ………………………………

原文地址:访问原文地址
快照地址: 访问文章快照