位置: IT常识 - 正文

java读写锁的特性(java 读写锁 map)

编辑:rootadmin

推荐整理分享java读写锁的特性(java 读写锁 map),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:java中读写锁,java读写锁的使用场景,java读写锁源码分析,java读写锁的使用场景,java读写锁的使用场景,java读写锁源码分析,java读写锁的使用场景,java读写锁的使用场景,内容如对您有帮助,希望把文章链接给更多的朋友!

java读写锁的特性(java 读写锁 map)

626

1、公平选择性,支持非公平和公平锁获取,吞吐量不公平优于公平。

2、重进入,读锁和写锁都支持线程重进入。

3、锁降级,遵循获取写锁、获取读锁、释放写锁的顺序,写锁可以降级为读锁。

实例

publicclassReadWriteLockTest{publicstaticvoidmain(String[]args){finalQueueq=newQueue();for(inti=0;i<3;i++){newThread(){@Overridepublicvoidrun(){while(true){q.get();.start();newThread(){@Overridepublicvoidrun(){while(true){q.put(newRandom().nextInt(10000));.start();classQueue{//共享数据,只能有一个线程能写该数据,但可以有多个线程同时读该数据。ReadWriteLockrwl=newReentrantReadWriteLock();privateObjectdata=null;//共享数据,只能有一个线程能写数据,但可以有多个线程读该数据publicvoidget(){//上读锁,其他线程只能读不能写rwl.readLock().lock();try{System.out.println(Thread.currentThread().getName()+"bereadytoreaddata!");Thread.sleep((long)(Math.random()*1000));System.out.println(Thread.currentThread().getName()+"havereaddata:"+data);catch(InterruptedExceptione){e.printStackTrace();finally{rwl.readLock().unlock();publicvoidput(Objectdata){//上写锁,不允许其他线程读也不允许写rwl.writeLock().lock();try{System.out.println(Thread.currentThread().getName()+"bereadytowritedata!");Thread.sleep((long)(Math.random()*1000));this.data=data;System.out.println(Thread.currentThread().getName()+"havewritedata:"+data);catch(InterruptedExceptione){e.printStackTrace();finally{rwl.writeLock().unlock();
本文链接地址:https://www.jiuchutong.com/zhishi/310457.html 转载请保留说明!

上一篇:windows7/windows10/windows11最强Audacity音频编辑播放器软件,免费下载

下一篇:phpcms 1064错误的解决办法

  • 开专票了还能不能退款
  • 今年补交上年的对外捐赠(视同销售收入)的税怎么处理?
  • 一次性开票分期确认收入的税务文件是什么
  • 增值税专用发票可以开电子发票吗
  • 重分类八个对应科目有哪些
  • 坏账计提坏账准备
  • 出口企业类别在哪里查
  • 掌握无形资产核算方法
  • 工程设计企业符合增值税抵减政策吗
  • 商户办会员卡 商场承担责任
  • 材料存货的期末计量有何特点
  • 物业费增值税收入的确认最新政策
  • 纳税总额包括代扣代缴个人所得税吗
  • 扣押属于纳税担保吗
  • 金融业的增值税
  • 定额发票上盖什么章
  • 饭店试菜费用如何计算
  • 分包业务的账务处理办法
  • 企业职工补助
  • 小汽车的消费税征税环节
  • 会计学考研考哪些科目专硕
  • 在建工程预转固后又有工程款
  • 如果辞职了,能一次性拿到钱吗?
  • 确认收入后又退部分款怎么做账
  • 合伙企业分红是免税企业需要缴纳什么税
  • 一般劳务报酬和其他劳务报酬的区别
  • linux中的util值很高
  • 广告补贴申请报告
  • 临时设施是租入还是租入
  • 资产负债表的编制方法
  • win10怎么看已安装的驱动
  • 无形资产的摊销方法
  • window10自带商店下载位置
  • php实验二
  • 计提坏账准备的方法有哪些
  • sci期刊投稿步骤
  • 深度学习——VGG16模型详解
  • 建设工程劳务分包合同属于建设工程合同吗
  • 门店装修费怎么记会计凭证
  • 存货跌价准备的转销会计分录
  • java多线程线程数控制在多少
  • less变量
  • Node 下 Http Streaming 的跨浏览器实现
  • 工业企业采购流程
  • 工伤事故赔偿款分配
  • 增值税发票上多了一个点能刮掉吗
  • 织梦如何给栏目增加缩略图
  • 跨年租金如何确权
  • 公司签发银行承兑汇票的行为属于什么
  • 安全宣传标牌
  • sql server如何操作
  • mysql索引最大数量
  • 建安企业用什么会计制度
  • 不抵扣的进项发票需要在电子税务局操作么
  • 当月作废的专票还是要交增值税吗
  • 本年利润在借方表示什么意思
  • 工伤事故补助或赔偿标准
  • 现金收账凭证
  • 期末结转之前会进行哪些工作
  • mysql8.0存储过程
  • linux搭建socks代理
  • 苹果mac怎么查看运行数据
  • os x 10.10 yosemite自动纠正怎么关?os x yosemite自动纠正功能关闭教程
  • win10系统怎么调整字体大小
  • 生产运维管理
  • win10系统怎么更改开机密码
  • cocos2djs
  • es6解构函数
  • [置顶]从lv2开始开挂的原勇者候悠闲的异世界生活
  • 都是惹得祸
  • ie内存怎么清理
  • 批处理应用实例
  • 基于node.js的跳蚤市场网站主要内容
  • shell调用java方法
  • node.js基础入门
  • 音频基础知识及训练
  • 税务如何稽查
  • 消费税税收优惠的纳税筹划
  • 宁波国税发票查询
  • 山西收入最高的县
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设