什么是重入锁(Reentrant Lock)以及重入锁在Java中的实现(tryAcquire 方法)
重入锁(Reentrant Lock),也称为递归锁,是一种。在多线程编程中,锁是确保共享资源被安全访问的关键工具。当一个线程需要进入由锁保护的代码块时,它必须首先获得这把锁;如果锁已经被其他线程持有,则该线程会被阻塞直到能够获取到锁。对于非重入锁,一旦某个线程获得了锁,在释放这个锁之前,如果再次尝试获取相同的锁,那么它将被永久阻塞,导致死锁。而重入锁则解决了这个问题,它允许已经持有一个锁的线程重复获取该锁而不会被阻塞。这种能力是来实现的。当一个线程第一次获取锁时,计数器设置为1;
原创
2024-09-22 21:03:53 ·
367 阅读 ·
0 评论