Sync SyncSemaphore::__construct

(PECL sync >= 1.0.0)

SyncSemaphore::__construct — 새로운 SyncSemaphore 객체를 생성합니다.


설명

public SyncSemaphore::__construct(string $name = ?, int $initialval = 1, bool $autounlock = true)

명명되거나 명명되지 않은 세마포를 구성합니다.


매개변수

name
명명된 세마포어 개체인 경우 세마포어의 이름입니다.

메모: 이름이 이미 존재하는 경우 프로세스가 실행 중인 현재 사용자가 이 이름을 열 수 있어야 합니다. 그렇지 않으면 의미 없는 오류 메시지와 함께 예외가 throw됩니다.

initialval
세마포어의 초기 값입니다. 획득할 수 있는 잠금 수입니다.
autounlock
PHP 스크립트 종료 시 세마포어를 자동으로 잠금 해제할지 여부를 지정합니다.

경고 객체가 다음과 같은 경우: autounlock이 false인 명명된 세마포어, 객체가 잠기고 객체가 잠금 해제되기 전에 PHP 스크립트가 종료되면 기본 세마포는 일관성 없는 상태가 됩니다.


반환 값

SyncSemaphore 개체입니다.


오류/예외

세마포를 만들거나 열 수 없는 경우 예외가 throw됩니다.


Examples

예제 #1 SyncSemaphore::__construct() 예제

                  
<?php
$semaphore = new SyncSemaphore("LimitedResource_2clients", 2);

if (!$semaphore->lock(3000))
{
    echo "Unable to lock semaphore.";

    exit();
}

/* ... */

$semaphore->unlock();
?>
                  
                

기타