- 博客(21)
- 收藏
- 关注
原创 字节跳动后端开发一面
例如,在内存地址V当中,假设存放着一个变量D为10的值,此时,线程1想要去修改变量D。如果在线程1要提交更新前,线程2获取到cpu的时间片,将内存地址V中的值率先更新为11,而再次当线程1获得cpu时间的时候,准备提交更新的时候,首先会进行旧的预期值A和内存地址V当中的实际值比较,如果此时发现A不等于V的实际值,则就提交失败,线程1就只能再重新获取内存地址V上的值,而此时旧的预期值A=11,新值B=12,等到没有其他的线程去更改内存地址V中的值,这个时间就会把内存地址V中的值替换为B,也就是12。
2024-03-27 19:44:13 355
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人