Channel::capacity

(PHP 8.6+, True Async 1.0)

public Channel::capacity(): int

Gibt die bei der Erstellung über den Konstruktor festgelegte Kapazität des Channels zurück.

Der Wert ändert sich während der Lebensdauer des Channels nicht.

Rückgabewerte

Die Pufferkapazität des Channels (int).

Beispiele

Beispiel #1 Kapazität abfragen

<?php

use Async\Channel;

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

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

Beispiel #2 Adaptive Logik basierend auf dem Channel-Typ

<?php

use Async\Channel;

function processChannel(Channel $ch): void {
    if ($ch->capacity() === 0) {
        echo "Rendezvous-Channel: Jedes Senden wartet auf einen Empfänger\n";
    } else {
        echo "Gepufferter Channel: Kapazität {$ch->capacity()}\n";
        echo "Frei: " . ($ch->capacity() - $ch->count()) . " Plätze\n";
    }
}

Siehe auch