文章详情页
java - 多线程为什么会访问同一个资源
问题描述
如题,多线程本质上是对cpu时间片合理调度分配实现看上去的并发,但是实际上一个时刻还是只有一条指令执行,为什么会出现多个线程访问一个资源的情况?
问题解答
回答1:因为对资源的一个操作可能是由多条指令组成,只有当这多条指令执行完了,对资源的操作才会完成,如果你还没把这些指令执行完,就切换至其他线程,宏观上就会出现多个线程访问同一个资源的情况
而且,谁说实际上一个时刻还是只有一条指令执行的?谁说多线程只是看上去的并发?难道阁下不知道有多核CPU的存在!!!!!!
回答2:因为有多核cpu
标签:
java
相关文章:
1. 多选框写进数据库怎么写2. android - 使用listview加载不同item,数据填充错误。3. Python获取HTTP请求的状态码(200,404等)4. python3.x - python中的虚拟环境怎样设置一直处于激活状态5. angular.js - angular js 报错 [$injector:modulerr] 模块注入错误6. 前端需要设置 token的吗?7. Python处理Dict生成json8. boostrap怎么在移动端不显示sidebar?9. python中merge后文件莫名变得非常大10. javascript - 读js权威指南“作为值得函数”产生了疑惑,求释疑
排行榜