java  lock接口

java.util.concurrent.locks

接口lock

public interface loce

loce实现提供了比使用synchronized方法和语句可获得的更广泛的锁定操作

import java.util.concurrent.locks.lock;

import java.util.concurrent.locks.reentrantlock;

public class integerdemo {

public static void main(string[] args) {

// 创建3个线程对象

sellticket st = new sellticket();

thread t1 = new thread(st, "窗口1");

thread t2 = new thread(st, "窗口2");

thread t3 = new thread(st, "窗口3");

// 启动线程

t1.start();

t2.start();

t3.start();

}

}

class sellticket implements runnable {

private int ticket = 100;

private lock lock = new reentrantlock();

public void run() {

while (true) {

lock.lock();

if (ticket > 0) {

try {

thread.sleep(100);

} catch (interruptedexception e) {

// todo auto-generated catch block

e.printstacktrace();

}

system.out.println(thread.currentthread().getname() + "正在出售第" + (ticket--) + "张票。");

}

lock.unlock();

}

}

}

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

希望与广大网友互动??

点此进行留言吧!

java lock代码写法_java Lock接口详解及实例代码相关推荐

  1. java程序日期转换_Java 日期转换详解及实例代码

    Java 日期转换 涉及的核心类:Date类.SimpleDateFormat类.Calendar类 一. Date型与long型 Date型转换为long型 Date date = new Date ...

  2. java super实例_java Super 用法详解及实例代码

    java Super 用法详解及实例代码 发布于 2021-1-8| 复制链接 摘记: java  Super 用法详解 1)有人写了个很好的初始化属性的构造函数,而你仅仅想要在其中添加另一些自己新建 ...

  3. Java 线程池详解及实例代码

    转载自  Java 线程池详解及实例代码 这篇文章主要介绍了Java 线程池的相关资料,并符实例代码,帮助大家学习参考,需要的朋友可以参考下 线程池的技术背景 在面向对象编程中,创建和销毁对象是很费时 ...

  4. JavaScript 身份证号有效验证详解及实例代码

    这篇文章主要介绍了JavaScript 身份证号有效验证详解及实例代码的相关资料,需要的朋友可以参考下 JavaScript验证身份证号 1 2 3 4 5 6 7 8 9 10 11 12 13 1 ...

  5. python随机数程序源码_Python 实现随机数详解及实例代码

    Python3实现随机数 random是用于生成随机数的,我们可以利用它随机生成数字或者选择字符串. random.seed(x)改变随机数生成器的种子seed. 一般不必特别去设定seed,Pyth ...

  6. mysql 字段 as_mysql 字段as详解及实例代码

    mysql 字段使用as 在mysql中,select查询可以使用AS关键字为查询的字段起一个别名,该别名用作表达式的列名,并且别名可以在GROUP BY,ORDER BY或HAVING等语句中使用. ...

  7. 一文数学数模-相关性分析(二)斯皮尔曼相关(spearman)相关性分析一文详解+python实例代码

    前言 相关性分析算是很多算法以及建模的基础知识之一了,十分经典.关于许多特征关联关系以及相关趋势都可以利用相关性分析计算表达.其中常见的相关性系数就有三种:person相关系数,spearman相关系 ...

  8. 坐标移动c语言,C语言 坐标移动详解及实例代码

    搜索热词 题目描述 开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动.从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面. ...

  9. Flutter中Scaffold布局的使用详解及实例代码

    Flutter中Scaffold布局的使用详解及实例代码 Scaffold实现了基本的Material布局.只要是在Material中定义了的单个界面显示的布局控件元素,都可以使用Scaffold来绘 ...

最新文章

  1. mysql客户端与服务端_mysql语句在客户端与服务端的基本使用
  2. ImportError: DLL load failed: 找不到指定的模块
  3. 个人okr_我如何通过个人OKR完成了一个亿的小目标
  4. html5 如何实现客户端验证上传文件的大小
  5. MySQL The password hash doesn't have the expected format.
  6. 从接触FPGA开始...
  7. 在Jenkins中获取GitHub对应Repository的Resource Code
  8. SAP Spartacus的site context配置
  9. python爬取网页新闻_Python爬取新闻网数据
  10. 关于QR二维码的编码模式
  11. 从数据库中导出数据库文档
  12. python requests text content_对python requests的content和text方法的区别详解
  13. 关于sql中处理日期的相关函数
  14. 练习-图书馆管理系统
  15. win10应用商店打不开及打开之后下载失败问题解决方法
  16. 【爬虫进阶】验证码处理:打码平台的使用(反反爬)
  17. 泊松分布分布与Python图解
  18. windows电脑使用iTunes导入视频/音乐(本人使用,仅供参考)
  19. 吴恩达——机器学习 局部加权回归(Loess)
  20. element-ui表格行不对齐

热门文章

  1. 农艺师需要职称计算机,2015年农艺师职称计算机考试宝典.doc
  2. js将文字填充与canvas画布再转为图片
  3. IDEA @Override is not allowed when implementing interface method(转载)
  4. sublime text3配置Python2、Python3的编译环境
  5. python 进程间通信(上)
  6. [翻译]“LINQ to Objects”提供程序是否内置性能优化?
  7. C#的Winform多语言实现(resx文件)
  8. c语言之 malloc函数详解 在堆中动态分配内存malloc和new的区别
  9. mfc编程消息机制中消息汇总
  10. IOS基础之iPad的屏幕旋转方向判断