在学习过程中我遇到两种情况,假设共享变量为money = 100;(按照单核来考虑的线程并发疑惑)
(1)两个人取钱但结果只变化一次,这是因为当一个线程复制了一个副本操作之后还未返回原本导致值还没有更新另一个线程又复制了一个副本获取它的值。所以导致取了两次只变了一次。
(2)两个人取钱,前一个人看到余额就记住了但没有马上取这过程中另一个人也来取,导致两个人看到的余额一样,假设前一个人取100,后一个人取50,最后账户就剩-50了。
个人认为前一个是复制副本后一个是实时操作,若有不同理解的欢迎留言指正。