swoole_lock->lock_read
最后更新于:2022-04-02 06:31:16
# swoole\_lock->lock\_read
只读加锁。`lock_read`方法表示仅锁定读。
~~~
bool $lock->lock_read();
~~~
* 在持有读锁的过程中,其他进程依然可以获得读锁,可以继续发生读操作
* 但不能`$lock->lock()`或`$lock->trylock()`,这两个方法是获取独占锁,在独占锁加锁时,其他进程无法再进行任何加锁操作,包括读锁
* 当另外一个进程获得了独占锁(调用`$lock->lock`/`$lock->trylock`)时,`$lock->lock_read()`会发生阻塞,直到持有独占锁的进程释放锁
> 只有`SWOOLE_RWLOCK`和`SWOOLE_FILELOCK`类型的锁支持只读加锁
';