• 技术文章 >java >java基础

    java Lock提供哪些类?

    小妮浅浅小妮浅浅2021-06-18 10:16:01原创2760

    说明

    1、Lock是java.util.concurent包下的接口,定义了一系列的锁定操作方法。

    2、Lock界面主要包括ReentrantLock、ReentrantReadWriteLock、ReentrantReadWriteLock、WriteLock实现类。

    与Synchronized不同,Lock提供了获取锁、释放锁等相关界面,使其使用更加灵活,操作更加复杂。

    实例

    1

    2

    3

    4

    5

    6

    7

    8

    9

    10

    11

    12

    13

    14

    15

    16

    17

    18

    19

    20

    21

    22

    23

    ReentrantReadWriteLock lock = new ReentrantReadWriteLock();

    Lock readLock = lock.readLock();

    Lock writeLock = lock.writeLock();

    private int x = 0;

    private void count() {

        writeLock.lock();

        try {

            x++;

        } finally {

            writeLock.unlock();

        }

    }

    private void print(int time) {

        readLock.lock();

        try {

            for (int i = 0; i < time; i++) {

                System.out.print(x + " ");

            }

            System.out.println();

        } finally {

            readLock.unlock();

        }

    }

    以上就是java Lock提供类的介绍,希望对大家有所帮助。更多Java学习指路:Java基础

    本教程操作环境:windows7系统、java10版,DELL G3电脑。

    专题推荐:java lock
    上一篇:java Synchronized的三种作用 下一篇:java如何操作成员变量?

    相关文章推荐

    • BlockingQueue在java中的使用• java中ArrayBlockingQueue的使用• java ArrayBlockingQueue源码探讨• ArrayBlockingQueue在java的入队• java中ArrayBlockingQueue的出队• java ArrayBlockingQueue的方法及不足点• java中linkedblockingqueue用法• linkedblockingqueue在java中的原理• java中linkedblockingqueue的增加方法• linkedblockingqueue在java中出队• java PriorityBlockingQueue的使用• PriorityBlockingQueue在java中的原理

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网