java Lock接口详解及实例代码

作者:lqh 时间:2022-12-15 21:44:38 

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,接口
0
投稿

猜你喜欢

  • Docker环境下Spring Boot应用内存飙升分析与解决场景分析

    2023-04-28 05:00:24
  • Android图片缓存之初识Glide(三)

    2022-02-18 12:05:21
  • Android返回键功能的实现方法

    2021-10-01 12:54:53
  • C#图像处理之木刻效果实现方法

    2022-05-20 04:28:13
  • Android studio4.1更新后出现的问题详解

    2022-12-06 03:22:54
  • C#程序调用cmd.exe执行命令

    2022-11-14 04:04:50
  • Unity中的静态批处理和动态批处理操作

    2022-09-29 20:12:08
  • 利用C#实现SSLSocket加密通讯的方法详解

    2023-03-01 02:23:05
  • Android编程中避免内存泄露的方法总结

    2023-07-27 19:32:50
  • C#滚动字幕的实现方法

    2022-05-27 04:32:31
  • 在 C# 中使用 插值字符串

    2023-06-23 07:09:50
  • 详解java中各类锁的机制

    2022-08-01 06:48:56
  • java基础的详细了解第三天

    2023-10-05 23:47:04
  • java多线程之CyclicBarrier的使用方法

    2023-11-04 21:52:54
  • java中lambda表达式简单用例

    2023-11-24 23:17:52
  • Spring AOP底层原理及代理模式

    2023-05-05 14:19:38
  • Kotlin Flow常见场景下的使用实例

    2023-01-30 10:46:25
  • OpenCV画任意圆弧曲线

    2023-06-22 19:28:44
  • sort page 排序和分页的小例子

    2022-07-31 23:08:37
  • Spring Cloud基于zuul实现网关过程解析

    2021-09-11 06:52:19
  • asp之家 软件编程 m.aspxhome.com