Java并发AtomicBoolean类~
java.util.concurrent.atomic.AtomicBoolean
类提供了可以原子读取和写入的底层布尔值的操作,并且还包含高级原子操作。 AtomicBoolean
支持基础布尔变量上的原子操作。 它具有获取和设置方法,如在volatile
变量上的读取和写入。 也就是说,一个集合与同一变量上的任何后续get
相关联。 原子compareAndSet
方法也具有这些内存一致性功能。
AtomicBoolean类中的方法
以下是AtomicBoolean
类中可用的重要方法的列表。
序号 | 方法 | 描述 |
---|---|---|
1 | public boolean compareAndSet(boolean expect, boolean update) |
如果当前值== 期望值,则将该值原子设置为给定的更新值。 |
2 | public boolean get() |
返回当前值。 |
3 | public boolean getAndSet(boolean newValue) |
将原子设置为给定值并返回上一个值。 |
4 | public void lazySet(boolean newValue) |
最终设定为给定值。 |
5 | public void set(boolean newValue) |
无条件地设置为给定的值。 |
6 | public String toString() |
返回当前值的String 表示形式。 |
7 | public boolean weakCompareAndSet(boolean expect, boolean update) |
如果当前值== 期望值,则将该值原子设置为给定的更新值。 |
实例
以下TestThread
程序显示了基于线程的环境中AtomicBoolean
变量的使用。
Java并发AtomicBoolean类~的更多相关文章
- Java并发工具类 - CountDownLatch
Java并发工具类 - CountDownLatch 1.简介 CountDownLatch是Java1.5之后引入的Java并发工具类,放在java.util.concurrent包下面 http: ...
- 基于AQS实现的Java并发工具类
本文主要介绍一下基于AQS实现的Java并发工具类的作用,然后简单谈一下该工具类的实现原理.其实都是AQS的相关知识,只不过在AQS上包装了一下而已.本文也是基于您在有AQS的相关知识基础上,进行讲解 ...
- 25.大白话说java并发工具类-CountDownLatch,CyclicBarrier,Semaphore,Exchanger
1. 倒计时器CountDownLatch 在多线程协作完成业务功能时,有时候需要等待其他多个线程完成任务之后,主线程才能继续往下执行业务功能,在这种的业务场景下,通常可以使用Thread类的join ...
- Java并发工具类CountDownLatch源码中的例子
Java并发工具类CountDownLatch源码中的例子 实例一 原文描述 /** * <p><b>Sample usage:</b> Here is a pai ...
- 【Java并发工具类】原子类
前言 为保证计数器中count=+1的原子性,我们在前面使用的都是synchronized互斥锁方案,加锁独占访问的方式未免太过霸道,于是我们来介绍另一种解决原子性问题的无锁方案:原子变量.在正式介绍 ...
- java 并发工具类CountDownLatch & CyclicBarrier
一起在java1.5被引入的并发工具类还有CountDownLatch.CyclicBarrier.Semaphore.ConcurrentHashMap和BlockingQueue,它们都存在于ja ...
- Java并发工具类(四):线程间交换数据的Exchanger
简介 Exchanger(交换者)是一个用于线程间协作的工具类.Exchanger用于进行线程间的数据交换.它提供一个同步点,在这个同步点两个线程可以交换彼此的数据.这两个线程通过exchange方法 ...
- Java并发工具类(一):等待多线程完成的CountDownLatch
作用 CountDownLatch是一个同步工具类,它允许一个或多个线程一直等待,直到其他线程的操作执行完后再执行 简介 CountDownLatch是在java1.5被引入的,存在于java.uti ...
- 多线程之美3一Java并发工具类
一.简介 1.1. Semaphore 信号量,见文知义,常用于并发控制中的限流作用,我理解是限定数量的共享锁机制.该共享资源最多同时可让n个线程访问,超过n个线程就阻塞等待,如有资源空闲, 唤醒其他 ...
随机推荐
- python常用模块---collections、time、random、os、sys、序列号模块
collections模块 在内置数据类型(dict.list.set.tuple)的基础上,collections模块还提供了几个额外的数据类型:Counter.deque.defaultdict. ...
- 16、NumPy ——字节交换
NumPy 字节交换 在几乎所有的机器上,多字节对象都被存储为连续的字节序列.字节顺序,是跨越多字节的程序对象的存储规则. 大端模式:指数据的高字节保存在内存的低地址中,而数据的低字节保存在内存的高地 ...
- lucene版本升级到4.6.0以上之后使用ik分词器遇到的问题
在将lucene core版本从4.5.1升级到4.7.0后,如下代码使用ik分词器报错 IKAnalyzer analyzer = new IKAnalyzer(true); StringReade ...
- 67.Task Scheduler(任务规划)
Level: Medium 题目描述: Given a char array representing tasks CPU need to do. It contains capital letter ...
- 攻防世界--simple-unpack
下载链接:https://adworld.xctf.org.cn/media/task/attachments/b7cf4629544f4e759d690100c3f96caa 1.准备 获取到信息: ...
- java crm 系统 进销存 springmvc SSM项目项目源码
统介绍: 1.系统采用主流的 SSM 框架 jsp JSTL bootstrap html5 (PC浏览器使用) 2.springmvc +spring4.3.7+ mybaits3.3 SSM 普 ...
- C# 对象转JSON字符串
对象转JSON字符串 /// <summary> /// 对象转Json字符串 /// </summary> /// <param name="obj" ...
- 基于TMS320C6455、XC5VSX95T 的6U CPCI无线通信处理平台
基于TMS320C6455.XC5VSX95T 的6U CPCI无线通信处理平台 1. 板卡概述 本板卡由我公司自主研发,基于CPCI架构,符合PICMG2.0 D3.0标准,包含双TI TMS3 ...
- kali Linux 入门(一)
一.描述 1.基于Debian Linux 发行版 2013年3月13日 2.包含约600个安全工具 3.定制 安全稳定的内核 4.前身是BackTrack(2013年停止维护) 5.官方机构:Off ...
- 【python实例】要求输出字符串中最少一个最多八个的所有字符串组合(连续)
""" 题目:字符串str="ABCDEFGHIJK",要求输出最少一个最多八个的所有组合(向后连续字母) 输出如下: A [0::] AB ABC ...