send-on-channel

Ein Aufruf der Funktion send-on-channel schreibt eine Nachricht in einen Kanal.

Die Funktion erwartet drei Argumente: den Kanal, die Nachricht und eine nicht negative Ganzzahl, die die maximale Wartezeit in Millisekunden angibt.

Die Wartezeit wird angewendet, wenn die Kapazität des Kanals zur Aufnahme von Nachrichten ausgeschöpft ist. Die Kapazität kann angegeben werden, wenn der Kanal erzeugt wird (siehe make-channel).

Wenn die Nachricht an den Kanal übergeben werden konnte, dann ist die Nachricht auch der Rückgabewert des Funktionsaufrufs. Wenn der Kanal geschlossen ist (siehe close-channel) oder die Wartezeit abläuft, bevor die Nachricht gesendet werden kann, dann ist das Resultat nil.


> (let ((channel (make-channel 0)))
    (list
      (send-on-channel channel "hallo" 10)
      (receive-from-channels (list channel) 10)))
("hallo" "hallo")