Lock

swoole1.6.4�汾����������ʵ�֡�PHP�����п��Ժܷ���ش���һ����������ʵ������ͬ����swoole_lock��֧��5���������ͣ�

  1. �ļ��� SWOOlE_FILELOCK
  2. ��� SWOOLE_RWLOCK
  3. �ź��� SWOOLE_SEM
  4. ������ SWOOLE_MUTEX
  5. ������ SWOOlE_SPINLOCK

ע�⣺������onReceive�Ȼص������д�����������ײ��GlobalMemory�ڴ治��ᴴ��ʧ�ܡ���swoole�п��Դ�����Lock������������

ʾ����

$lock = new swoole_lock(SWOOLE_MUTEX);
echo "[Master]create lock\n";
$lock>lock();
if(pcntl_fork() > 0) 
{
        sleep(1);
        $lock>unlock();
} 
else
{
        echo "[Child] Wait Lock\n";
        $lock>lock();
        echo "[Child] Get Lock\n";
        $lock>unlock();
        exit("[Child] exit\n");
}
echo "[Master]release lock\n";
unset($lock);
sleep(1);
echo "[Master]exit\n";