Channel::capacity

(PHP 8.6+, True Async 1.0)

public Channel::capacity(): int

생성자를 통해 생성 시 설정된 채널 용량을 반환합니다.

이 값은 채널의 수명 동안 변경되지 않습니다.

반환값

채널 버퍼 용량 (int).

예제

예제 #1 용량 확인

<?php

use Async\Channel;

$rendezvous = new Channel();
echo $rendezvous->capacity(); // 0

$buffered = new Channel(100);
echo $buffered->capacity(); // 100

예제 #2 채널 타입에 따른 적응형 로직

<?php

use Async\Channel;

function processChannel(Channel $ch): void {
    if ($ch->capacity() === 0) {
        echo "Rendezvous channel: each send waits for a receiver\n";
    } else {
        echo "Buffered channel: capacity {$ch->capacity()}\n";
        echo "Free: " . ($ch->capacity() - $ch->count()) . " slots\n";
    }
}

같이 보기