1.1、如何安装

源码编译php时,加上指令--enable-sysvsem

1.2、函数解释

phpsemget57php采取sysvsem扩大实现旌旗灯号量操作 Docker

2、旗子暗记量基本用法

2.1、源码

<?php

/

Copyright (C) Iamasb

@project : 3、workerman干系知识点

@explain : 旗子暗记量基本用法

@filename : 30、旗子暗记量基本用法.php

@author : xiaobei 2801616735@qq.com

/

$key = ftok(__FILE__,'s');

// 设置旗子暗记量

$semId = sem_get($key);

// 获取信号量

if (sem_acquire($semId)) {

echo 'get...',PHP_EOL;

// 仿照任务实行

sleep(10);

// 开释旗子暗记量,让其它进程获取

sem_release($semId);

}

// 但在多个终端运行时,应注释下面代码

sem_remove($semId);

2.2、实行结果

单个shell终端运行

多个shell终端运行