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

百色建设网站网站建设的宽带指标要求

百色建设网站,网站建设的宽带指标要求,沈阳网站关键词优化排名,导购网站 转化率Java中的原子性操作 所谓原子性操作#xff0c;是指执行一系列操作时#xff0c;这些操作要么全部执行#xff0c;要么全部不执行#xff0c;不存在只执行其中一部分的情况。 在设计计数器时一般都先读取当前值#xff0c;然后1,再更新。 这个过程是读—改—写的过程是指执行一系列操作时这些操作要么全部执行要么全部不执行不存在只执行其中一部分的情况。 在设计计数器时一般都先读取当前值然后1,再更新。 这个过程是读—改—写的过程如果不能保证这个过程是原子性的那么就会出现线程安全问题。 如下代码是线程不安全的因为不能保证value是原子性操作。 那么如何才能保证多个操作的原子性呢?最简单的方法就是使用synchronized关键字进行同步。 使用synchronized关键字的确可以实现线程安全性即内存可见性和原子性但是synchronized是独占锁没有获取内部锁的线程会被阻塞掉而这里的getCount方法只是读操作多个线程同时调用不会存在线程安全问题。 但是加了关键字synchronized后同一时间就只能有一个线程可以调用这显然大大降低了并发性。 你也许会问既然是只读操作那为何不去掉getCount方法上的synchronized关键字呢?其实是不能去掉的别忘了这里要靠synchronized来实现value的内存可见性。 那么有没有更好的实现呢?答案是肯定的下面将讲到的在内部使用非阻塞CAS算法实现的原子性操作类AtomicLong就是一个不错的选择。 Java中的CAS操作 在Java中锁在并发处理中占据了一席之地但是使用锁有一个不好的地方就是当一个线程没有获取到锁时会被阻塞挂起这会导致线程上下文的切换和重新调度开销。 Java提供了非阻塞的volatile关键字来解决共享变量的可见性问题这在一定程度上弥补了锁带来的开销问题但是volatile只能保证共享变量的可见性不能解决读一改一写等的原子性问题。 CAS即Compare and Swap,其是JDK提供的非阻塞原子性操作它通过硬件保证了比较一更新操作的原子性。JDK里面的Unsafe类提供了一系列的compareAndSwap*方法下面以compareAndSwapLong方法为例进行简单介绍。 boolean compareAndSwapLong(Object obj,long valueOffset,long expect,long update)方法其中compareAndSwap的意思是比较并交换。CAS有四个操作数分别为对象内存位置、对象中的变量的偏移量、变量预期值和新的值。其操作含义是如果对象obj中内存偏移量为valueOffset的变量值为expect,则使用新的值update替换旧的值expect。这是处理器提供的一个原子性指令。 关于CAS操作有个经典的ABA问题具体如下假如线程I使用CAS修改初始值为A的变量X,那么线程I会首先去获取当前变量X的值(为A),然后使用CAS操作尝试修改X的值为B,如果使用CAS操作成功了那么程序运行一定是正确的吗?其实未必这是因为有可能在线程I获取变量X的值A后在执行CAS前线程Ⅱ使用CAS修改了变量X的值为B,然后又使用CAS修改了变量X的值为A。所以虽然线程I执行CAS时X的值是A,但是这个A已经不是线程I获取时的A了。这就是ABA问题。 ABA问题的产生是因为变量的状态值产生了环形转换就是变量的值可以从A到B,然后再从B到A。 如果变量的值只能朝着一个方向转换比如A到B,B到C,不构成环形就不会存在问题。 JDK中的AtomicStampedReference类给每个变量的状态值都配备了一个时间戳从而避免了ABA问题的产生。
http://www.pierceye.com/news/470983/

相关文章:

  • 网站备案 游戏修改wordpress字体
  • 福建微网站建设价格宝山专业网站建设
  • 做采集网站难不关键词做网站名字
  • 怎么做律师事务所的网站用凡科做网站好吗
  • 免费做网站公司ydwzjs政务网站的建设
  • 企业网站设计总结西安做网站哪里便宜
  • wordpress 电影下载站济南最新消息
  • 怎样做企业的网站公司部门解散
  • 三亚中国检科院生物安全中心门户网站建设什么是响应式网站
  • 为什么要建设公司网站怎么制作图片视频和配音乐
  • 建设项目环境影响登记表备案系统网站论坛门户网站开发
  • 铁岭网站建设建设云企业服务平台
  • 响应式网站制作方法泰安明航网络科技有限公司
  • 建设网站需要几级安全等保深圳网站开发招聘
  • 无锡网站建设制作公司甘肃省建设工程网站
  • 广州微信网站建设哪家好公司网站排名优化手段
  • 深圳市路桥建设集团有限公司招标采购网站crntos wordpress
  • 广告网站制作报价深圳建筑设计平台网站
  • 网站ns记录南宁企业建站模板
  • 网站服务建设目前做哪些网站能致富
  • 专业网站定制公司深圳网页制作服务
  • 白云网站(建设信科网络)网页工具在哪里
  • 食品网站策划网站建设送企业邮箱吗
  • 天津自贸区建设局网站手机网站导航设计
  • 企业网站建设制作大连网站建设吗
  • 做网页兼职网站有哪些建设网站需要花费
  • 如何快速写一个网站黄页网络的推广软件下载
  • 网站建设公司注册enfold wordpress
  • 上海网站建设百度推广公司哪家好模具厂咋做网站
  • 网站背景自动切换织梦网站模板使用教程