PHPマニュアル/PEARマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

MongoCursor::awaitData - 追尾可能なカーソルで、データがないときにしばらく待つかどうかを設定する | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

MongoCursor::awaitData

(PECL mongo >=1.2.11)

MongoCursor::awaitData追尾可能なカーソルで、データがないときにしばらく待つかどうかを設定する

説明

public MongoCursor MongoCursor::awaitData ([ bool $wait = true ] )

このメソッドは追尾可能なカーソルに対して使います。 データの最期に到達したときに、空のデータを返すのではなくブロックしてデータを待つようになります。 タイムアウトに達すると、通常の場合と同様に空のデータを返します。

パラメータ

wait

カーソルに、さらにデータがやってくるまで待たせるかどうか。

返り値

このカーソルを返します。

エラー / 例外

カーソルの反復処理が始まっている場合は MongoCursorException をスローします。

例1 MongoCursor::awaitData() の例

この例では "oplog" を追尾します。反復処理のたびにスリープするのではなく、 MongoCursor::awaitData() オプションを設定します。 MongoCursor::hasNext() はこれで、さらにデータがやってくるまでブロックするようになります。

<?php
$m 
= new MongoClient'mongodb://localhost:13000', array( 'replSet' => 'seta' ) );
$c $m->local->selectCollection'oplog.rs' );
$cursor $c->find( array( 'ns' => 'demo.article''op' => 'i' ) );
$cursor->tailabletrue );
$cursor->awaitDatatrue );

while (
true) {
    if (!
$cursor->hasNext()) {
        
// すべての結果を読んだので、終了します
        
if ($cursor->dead()) {
            break;
        }
    } else {
        
var_dump$cursor->getNext() );
    }
}
?>

参考

MongoDB コアドキュメントの » tailable cursors

  • MongoCursor::tailable() - このカーソルが、最後の結果を取得した後もオープンしたままにしておくかどうかを設定する


忘却曲線を使ってこの知識を確実に記憶に残す

フォーラムで「MongoCursor::awaitData - 追尾可能なカーソルで、データがないときにしばらく待つかどうかを設定する」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | MongoCursor::awaitData - 追尾可能なカーソルで、データがないときにしばらく待つかどうかを設定する」をGoogle検索
copyright © 1997-2024 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: