www.103365.com
  • 首页
  • 365bet官网欧洲
  • www.sb688.com
  • 28365备用网址官方网站
  • 365bet稳定备用网站
  • www.188sb.com
  • 365线上娱乐

热门文章

在19年,你是否适合改变做其他事情?
充满技术,这2.0T的功率,油耗为5.2
国王的荣耀:S14赛季发生了很大变化,分
在中国开五个“稀有”!老司机:道路愤
周立奇嫁给了IG,前佑义送来了祝福,但
哈登打破了55年的NBA纪录,火箭MVP还有另
傅元辉和妈妈谈到饥饿时怎么做,选择一
在一个下雪天,一个小赤脚肉,电影冻结
国家戏剧节最好的男性派对“环珠格格”
在安全着陆之前,飞行员将采取什么措施

随机文章

如何使用官方的别克zl8工具
?5G卡是一个新的英雄,索引将继续保持
我不明白这一点,减肥很难。
它不是花架,中泰T600的新组合更具品质。
真假战斗力量的差异太大了!真武和尚的
李叔叔举起一个骑士的兰花,土壤水分有
它是世界上最受欢迎的“破桥”,每天大
“盗窃长安”长安迪莫
汤文如是一位深深扎根于人们心中的诗人
雍正只有13位女性是“好兄弟”?他低估
当前位置: 主页 > www.188sb.com >

www.188sb.com

什么是线程安全性和线程不稳定?

首先,您需要了解线程如何工作。JVM有主内存,每个线程都有自己的工作内存。线程操作变量时,必须在工作内存中进行复制,并在操作后将其写入主内存。
如果多个线程同时对同一个变量进行操作,则可能会发生不可预测的结果。
根据前面的解释,很容易找到相应的方案。
使用同步的关键是创建监视器。该监视器可以是要更改的变量,也可以是适合作为方法的其他对象。其次,线程安全是通过锁定监视器来实现的。每个线程获取锁后,释放获取的锁以将工作内存-使用-分配-存储加载到主内存中。
这提供了所谓的线程安全性。
------------------------------------------------------
什么是线程安全性?
线程安全性如何执行(原理)?
线程安全意味着对同一代码的多线程访问不会产生决定性的结果。
编写线程安全代码几乎与线程同步无关。
------------------------------------------------------
在接口模式下,线程具有共享的数据成员。也就是说,在privateintcount = 10;在继承模式下,线程之间没有共享成员,但是每个线程都有一个私有成员。也就是说,privateintcount = 10;所有者代码是何时考虑线程同步以及如何在特定程序中编写线程安全代码的一个很好的示例。
在多线程环境中,如果线程不共享数据,则它们必须是安全的。
问题是这种情况很少见。在大多数情况下,需要共享数据,并且需要适当的同步控制。
--------------------------------------------------------
线程安全性通常包括同步。这是一次只能运行一个线程的代码。否则可能会导致中间过程出现意外结果。
---------------------------------------------------------
如果运行代码的进程具有多个线程,则这些线程可以同时执行此代码。
如果每次执行的结果与单线程执行的结果相同,并且其他变量的值与预期的相同,则对于线程来说是安全的。
例如,要在添加元素时完成ArrayList类,有两个步骤:1。
将此项目存储在项目[size]的位置。2
增加大小值。
对于单线程操作,多摩?如果O = 0,则在添加元素后,该元素位于位置0且为Tama?O = 1。同样,在有多个线程(例如两个线程)的情况下,线程A首先保存元素。
但是,此时,CPU将线程A编程为暂停,线程B有机会执行。
由于子进程B的大小也为0,因此向该ArrayList添加一个元素(添加一个元素需要两个步骤,假设线程A仅完成步骤1请注意)。B还接收该项目并将其存储在位置0。
之后,子流程A和子流程B都继续运行,并且都增加了大小值。
让我们看一下ArrayList的情况。实际上只有一个元素,它存储在位置0中,大小等于2。
这不是线程安全的。

来源:365bet现金  作者:365bet亚洲投注   点击次数:次   更新时间:2019-10-15 19:49  【打印此页】  【关闭】
上一篇:在氢锌熔炼电解液中同时添加Cu和CuSO4可能会形成   下一篇:没有了

www.103365.com