在我的课堂上,我的代码如下:

int counter1;

int counter2;

public void method1(){

if (counter1>0) {

...........do something

if (counter2>0) {

....do something else

}

}

public void method2() {

counter1=0;

counter2=0;

}

我需要将两个计数器放在一起.我担心只能在设置counter1后才能调用OS.有可能吗?

谢谢.

解决方法:

private int counter1;

private int counter2;

private final ReentrantReadWriteLock rwl = new ReentrantReadWriteLock();

private final Lock r = rwl.readLock();

private final Lock w = rwl.writeLock();

public void method1(){

r.lock();

try {

if (counter1>0) {

...........do something

if (counter2>0) {

....do something else

}

} finally { r.unlock(); }

}

public void method2() {

w.lock();

try {

counter1=0;

counter2=0;

} finally { w.unlock(); }

}

标签:java,atomic,multithreading,concurrency,operation

来源: https://codeday.me/bug/20190609/1208454.html

java 字符串原子变量,如何在java中提供原子读/写2个变量?相关推荐

  1. java cpu监控_如何在Java中监视计算机的CPU,内存和磁盘使用情况?

    问题 我想用Java监视以下系统信息: 当前CPU使用率**(百分比) 可用内存*(免费/总计) 可用磁盘空间(空闲/总计)*请注意,我的意思是整个系统可用的总内存,而不仅仅是JVM. 我正在寻找一种 ...

  2. java 字符串拆分技巧_{转}Java 字符串分割三种方法

    http://www.chenwg.com/java/java-%E5%AD%97%E7%AC%A6%E4%B8%B2%E5%88%86%E5%89%B2%E4%B8%89%E7%A7%8D%E6%9 ...

  3. java 字符串查找程序_java-如何在JAR文件中搜索字符串

    java-如何在JAR文件中搜索字符串 我的应用程序基于Java EE构建. 我在此应用程序中大约有50个罐子. 是否可以搜索特定的关键字(实际上我想搜索关键字BEGIN REQUEST)? user ...

  4. 字符串压缩 java_如何在Java中压缩字符串?

    如何在Java中压缩字符串? 我使用GZIPOutputStream或ZIPOutputStream压缩字符串(我的2222235278130938882小于20),但压缩结果比原始字符串长. 在某个 ...

  5. java 判断数字_如何在java中判断一个字符串是否是数字

    前言 数字在某些领域经常用字符串来进行表示和传递.那么我们如何判断一个字符串是否是数字呢?今天我们来探讨一下这个话题. 空字符和null 首先我们可以很清晰的知道空字符""和nul ...

  6. java 正则表达式 开头_如何在Java中修复表达式的非法开头

    java 正则表达式 开头 您是否遇到过这个令人难以置信的错误,想知道如何解决它? 让我们仔细阅读一下,研究如何解决表达式Java非法开头错误. 这是一个动态错误,这意味着编译器会发现某些不符合Jav ...

  7. java字符串转日期_在java中如何将一个字符串转换为日期?

    小编典典 在特定情况下," 2010年1月2日"作为输入字符串: "一月"是全文月份,因此请使用MMMM模式 " 2"是较短的月份,因此请使 ...

  8. java for 下标_Java如何在 Word 中设置上、下标

    上标是指比同一行中其他文字稍高的文字,而下标是指比同一行中其他文字稍低的文字.在生活中,我们常见的平方米.立方米等符号以及化学中的各种元素符号,都是利用上.下标来表示的.本文将介绍通过Free Spi ...

  9. java+script+当前日期_如何在JavaScript中获取当前日期?

    如何在JavaScript中获取当前日期? #1楼 您可以使用扩展了 Date对象的Date.js库,从而可以使用.today()方法. #2楼 如果您想对日期格式进行更多的粒度控制,我强烈建议您查看 ...

  10. 如何用java创建超链接_Java如何在PPT中的幻灯片上创建超链接?

    在Java编程中,如何在PPT中的幻灯片上创建超链接? 注意:需要访问网址:http://poi.apache.org/download.html , 下载一个Apache POI软件包.这里下载最新 ...

最新文章

  1. CSS中的字体属性和使用
  2. Qt中的QMessageBox
  3. mysql 使用中 修复 blog_Java My-Blog之mysql容器重复初始化严重bug修复过程
  4. 鸿蒙系统电视k歌,华为电视怎么k歌?看完两分钟快速开启K歌模式
  5. CodeForces - 1102A(思维题)
  6. poj2109 Power of Cryptography
  7. HTML是万维网核心语言的第几代,Html5相关的知识点总结
  8. java常用序列化与反序列化方法
  9. 基于差分整合移动平均自回归模型(ARIMA)的时序数据滚动预测建模与网格调参优化实战
  10. 阶段3 1.Mybatis_03.自定义Mybatis框架_4.自定义mybatis的编码-解析XML的工具类介绍
  11. 关于下载的NetMeeting无法共享的解决办法
  12. [从零开始学习FPGA编程-26]:进阶篇 - 基本组合电路-数据选择器(Verilog语言)
  13. 传统项目管理和敏捷项目管理的区别是什么?
  14. 非智能手机通信录备份并还原至Android智能手机方法
  15. 绘制3d散点图报错ax = fig.gca(projection = ‘3d‘)TypeError: gca() got an unexpected keyword argument
  16. WiFi、蓝牙、NFC哪家强?短距离无线通信技术对比分析
  17. OMAP850 运行android
  18. [ACW]826.单链表
  19. serverlet 区别_JSP serverlet区别与联系
  20. 海康/大华SDK视频智能分析安防监控系统EasyCVR集成iframe播放分屏出现滚动条原因排查

热门文章

  1. 使用ZFS的十条理由
  2. 在vs2005中调用远程WebService(幻想曲)
  3. 使用Latex排版一篇IEEE文章
  4. word文档中添加mathtype加载项
  5. excel函数SUMPRODUCT
  6. python之dict基础类型
  7. hdu 5591 ZYB's Game 博弈论
  8. 解决更新到os x10.11后openssl头文件无法找到的问题
  9. dsp之BF531笔记
  10. System Center产品相关开发(1)-SCOM和SCVMM简介