goroutine間通信用の可変長キューのモジュールです。
import "github.com/l4go/vqueue"vendoringして使うことを推奨します。
キューを生成します。引数'free'には、Close()で処分されるデータの処分方法を指定します。 処分の処理が必要ないときはnilを指定します。
キューを終了します。キューに残っているデータはPop()で取り出されるのを待ちます。
キューを終了します。キューに残っているデータは処分されて、空にされます。
現在の保存データサイズまでキューのメモリサイズを圧縮します。
キューからデータを取り出します。キューが空の時は、ブロックします。 データが取り出せた場合は、取り出せたデータと、trueが返されます。 Close()された場合は、nilとfalseが返されます。
キューからデータを取り出します。 ccがキャンセルされた場合は、処理を中断します。 データが取り出せた場合は、取り出せたデータと、trueが返されます。 Close()された場合もしくは、キューが空の場合は、nilとfalseが返されます。
キューからデータを取り出します。 データが取り出せた場合は、取り出せたデータと、trueが返されます。 Close()された場合もしくは、キューが空の場合は、nilとfalseが返されます。
キューからデータを取り出します。キューが空の時は、タイムアウト時間までブロックします。 2つのbool値はそれぞれ、値が取得できたこと、タイムアウトしたことを意味します。
タイムアウトした時は、nil, false, trueが返されます。 データが取り出せた場合は、取り出せたデータ、true, falseが返されます。 すでにClose()された場合は、nil, false, falseが返されます。
キューにデータを入れます。ブロックしません。