多线程中简单的++操作,所引发的思考

  

  一句简单的g_nLoginCount++操作,转换成汇编语言就成了上面的三句话,假如现在我们有两个线程,当第一个线程执行到第二个汇编时,此时第二个线程启动,他又从内存中读取g_nLoginCount,但这时第一个线程已经将g_nLoginCount做了加法操作,只是没有将其移回内存,这样的话这个加法操作形同虚设,这样计算的结果是不可预知的!!!!

原文地址:https://www.cnblogs.com/xiejiulong/p/3831823.html