当前位置: 首页 > news >正文

临夏市建设局网站/西安seo顾问培训

临夏市建设局网站,西安seo顾问培训,做网站 客户一直要求改,哪个网站可以做自由行地图竞争条件: Java多线程中多个线程对同一数据进行存取操作,可能出现某一线程尚未完成对该数据的操作,而另一线程又对该数据进行操作,造成了数据错误。 竞争条件产生的原因是对数据的操作不是原子操作。例如:两个线程同…

竞争条件:
Java多线程中多个线程对同一数据进行存取操作,可能出现某一线程尚未完成对该数据的操作,而另一线程又对该数据进行操作,造成了数据错误。
竞争条件产生的原因是对数据的操作不是原子操作。例如:两个线程同时执行count+=1;这条语句被处理过程如下:
1)将count加载到寄存器;
2)增加1;
3)将结果写回count。
当线程1执行步骤1、2后,失去运行权,线程2被唤醒执行了上述步骤,然后线程1被唤醒,继续执行步骤3,那么前述操作擦掉了第二个线程所做的更新。
同时由此可见,多线程中执行的中断不是语句级别甚至不是代码可见级别的,而是机器指令级别的
为了避免竞争条件情况的发生,就需要能够确保线程在失去控制之前运行完成,Java提供了两种机制对线程加锁,防止代码块受并发访问的干扰:1)声明ReentrantLock对象;2)使用synchronized关键字
1)声明锁对象
锁对象
在run()方法外声明锁对象,在run()内通过锁对象加锁,run运行结束前释放锁。在线程run方法中

Lock l = new ReentrantLock();//声明并创建一个可以被用来保护临界区的可重入锁
Lock l2 = new ReentrantLock(boolean fair);//声明并创建一个带有公平策略的锁,会降低程序性能,不必要的时候不用public void run(){l.lock();//加锁try{……}finaly{l.unlock();//释放锁}
}

此结构保证一个线程封锁锁对象后,其他线程无法通过lock语句,当其他线程调用lock时线程被阻塞,直到为对象加锁的线程释放锁对象
解锁操作放在finaly语句至关重要,如果在临界区的代码被抛出异常,锁必然被释放,否则其他线程将被永远阻塞

1、如果两个线程试图访问同一个线程对象,则锁一串行方式提供服务;如果两个线程访问不同的线程对象,每个线程对应不同的锁对象,则两个线程不会发生阻塞。
2、锁是可重入的,被一个锁保护的代码可以调用另一个使用相同的锁的方法
条件对象
某个线程已经获得了线程锁,但是该线程需要满足一定条件才能继续执行,但是该条件需要别的线程进行操作。使用条件对象来管理那些已经获得的了锁但是并不能继续工作的线程。
一个锁可以有一个或多个相关的条件对象,可以用锁对象的newCondition()方法获取一个条件对象。通常将一个条件对象命名为能反应他锁表达的条件的名字,如设置一个条件对象来表达售票程序中“余票充足”条件
常用方法:

Condition sufficientTicket;//声明条件对象sufficientTicket=l.newCondition();//通过锁对象获取一个条件对象sufficientTicket.await();
//当某个条件不能满足,需要等待其他线程来使得该条件满足的时候, 调用await方法,释放锁暂停执行sufficitentTicket.singalAll();
//另一个线程使得该条件满足后,通知所有被该条件对象阻塞的线程,当线程获取锁后则可以在await语句后继续执行

条件的使用过程:
首先,在线程类中声明一个条件对象;然后在类的构造函数中为

2)使用synchronized关键字

http://www.lbrq.cn/news/772759.html

相关文章:

  • wordpress引入css样式/淘宝关键词排名优化
  • 二次开发是指/seo专家是什么意思
  • wordpress 加上广告/seo是什么意思蜘蛛屯
  • 招标资源网官网/北京网站优化方式
  • 建设工程消防网站进入程序/软文营销ppt
  • 成都 企业网站建设公司/网络推广视频
  • 做网站免费服务器哪家好/百度不收录网站
  • 艺梵科技 网站建设/seo网页优化工具
  • 4399游戏网页版入口/seo搜索引擎优化课程总结
  • 做电商平台网站有哪些内容/网站建设与营销经验
  • 做好网站建设工作/厦门seo百度快照优化
  • 赛马网站开发出售/百度打开
  • 公司网站做的好的/黑帽seo优化软件
  • 网站开发的招标参数/网站免费网站免费优化优化
  • 个人网站的制作教程/中国2022年重大新闻
  • 网站建设现在主要做些什么/培训seo去哪家机构最好
  • 沈阳做网站优化的公司/网络营销题库及答案2020
  • 柳城企业网站建设公司/优化落实新十条措施
  • 网站前台的实现/关键词广告
  • 东莞专业技术人才服务网/seo广告优化多少钱
  • 自己做网站开微店可行吗/静态网页制作
  • 网站建设需要会什么软件/许昌seo公司
  • 大连网站建设找哪家好/网络营销公司名字大全
  • 东莞常平邮编是多少/广州seo优化费用
  • 建设法规网站/淘宝店铺推广方法
  • 怎么在自己的电脑上做网站/怎么去营销自己的产品
  • 汽车门店管理系统/电脑优化软件排行榜
  • 漳州做网站开发/百度关键词热搜
  • 电子商城网站建设的实训内容记述/免费建立个人网站申请
  • 重庆政务服务网/重庆企业网站排名优化
  • 车载软件架构 --- MCU刷写擦除相关疑问?
  • LeetCode 分类刷题:1004. 最大连续1的个数 III
  • Day05 店铺营业状态设置 Redis
  • 【CSS 布局】告别繁琐计算:CSS 现代布局技巧(gap, aspect-ratio, minmax)
  • 重学React(五):脱围机制一
  • ubuntu24.04设置登陆背景图片