3.1.1. pfi::concurrent::chan

3.1.1.1. 概要

同期多重化キュー

3.1.1.2. 使い方

chan<T>::chan()

空のキューを作る。

chan<T>::write(const T &r)

キューにrを入れる。

T chan<T>::read()

キューから取り出す。 キューが空なら待つ。

T chan<T>::unget(const T&r)

キューの先頭にrを戻す。

bool chan<T>::empty()

キューが空かどうかを返す。

shared_ptr<chan<T> > chan<T>::dup()

キューを複製する。 複製されたキューは多重化され、 どちらのキューにwriteされたデータも、 両方のキューからreadできる (ungetは多重化されない)。