hi,你好!欢迎访问本站!登录
本站由简数采集腾讯云宝塔系统阿里云强势驱动
当前位置:首页 - PHP问题 - 正文 请牢记本站网址www.sosophp.cn

PHP有锁吗【php题目】

2019-11-26PHP问题搜搜PHP网48°c
A+ A-

文件锁

这类锁比较罕见,比方 mysql, php-fpm 启动以后都邑有一个pid文件纪录了历程id,这个文件就是文件锁。

这个锁能够防备反复运转一个历程,比方在运用crontab时,限制每一分钟实行一个使命,但这个历程运转时候能够凌驾一分钟,假如不必历程锁处理争执的话两个历程一同实行就会有题目。

运用PID文件锁另有一个优点,轻易历程向本身发住手或许重启信号。比方重启php-fpm的敕令为:

kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`

发送USR2信号给pid文件纪录的历程,信号属于历程通讯,会另开一个篇幅。

互斥锁和读写锁

sync模块中的Mutex:

Mutex是一个组合词,mutual exclusion。用pecl装置一下sync模块, pecl install sync。 文档中的SyncMutex只要两个要领,lock 和 unlock。

sync模块中的读写锁:

SyncReaderWriter的要领相似,readlock, readunlock, writelock, writeunlock成对涌现即可。

sync模块中的Event:

觉得和golang中的Cond比较像,wait()壅塞,fire()叫醒Event壅塞的一个历程。有一篇好文引见了Cond, 能够看出Cond就是锁的一种牢固用法,SyncEvent也一样。php文档中的例子显现,fire()要领貌似能够用在web运用中。

sync模块中的信号量:

SyncSemaphore文档中显现,它和Mutex的不同之处,在于Semaphore一次能够被多个历程(或线程)获得,而Mutex一次只能被一个获得。所以在SyncSemaphore的组织函数中,有一个参数指定信号量能够被若干历程获得。

引荐教程:PHP视频教程

以上就是PHP有锁吗的细致内容,更多请关注ki4网别的相干文章!

  选择打赏方式
微信赞助

打赏

QQ钱包

打赏

支付宝赞助

打赏

  选择分享方式
  移步手机端
PHP有锁吗【php题目】

1、打开你手机的二维码扫描APP
2、扫描左则的二维码
3、点击扫描获得的网址
4、可以在手机端阅读此文章
标签: