Java中多线程在多核CPU中是真的同时执行吗?
2个回答
展开全部
如果是单核CPU,在某个时间点只能执行一个线程,但是多核CPU你可以理解为多个单核CPU,当然可以同时执行多个线程啦。
更多追问追答
追问
如果是同时运行的,那么两个线程在同时使用一个变量的时候怎么办?
追答
1)两个线程是可以共享一个对象实例的,但是需要使用锁机制,即无论是读还是写,在使用前获取lock,使用完free lock,如果读写操作对性能消耗不大,可以考虑自旋锁
2)如果读或者写操作,有任何一个比较耗时,则需要考虑是否系统有软件狗机制,在这种情况下,需要考虑初始化软件狗,避免进程复位。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询