Docs Menu
Docs Home
/
MongoDBマニュアル
/ / /

cursor.tailable()

項目一覧

  • 定義
  • 動作
cursor.tailable()

重要

mongosh メソッド

このページでは、 mongosh メソッドが文書化されます。これは Node.js などの言語固有のドライバーのドキュメントではありません

MongoDB API ドライバーについては、各言語の MongoDB ドライバー ドキュメントを参照してください。

クライアントがすべての結果を使い果たした場合でも開いたままに、カーソルを追尾可能としてマークします。

Capped コレクションに対してのみ使用します。 Capped コレクション以外のコレクションに対して~cursor.tailable()を使用すると、エラーが返されます。

cursor.tailable() は、次の構文を使用します。

cursor.tailable( { awaitData : <boolean> } )

~cursor.tailable() には、次のパラメーターがあります。

Parameter
タイプ
説明
awaitData
ブール値

任意。 DBQuery.Option.tailableと併用します。 使用可能なデータがない場合にクエリ スレッドをブロックし、すぐにデータを返さずに設定された時間データを待機するようにカーソルを設定します。 カーソルは、タイムアウトが経過した場合にのみデータを返しません。

デフォルトでは、カーソルを作成したコマンドにmaxTimeMSが設定されている場合、 awaitDataのタイムアウトは残りの時間になります。 それ以外の場合、デフォルトのタイムアウトは1000ミリ秒です。

awaitDataが有効になっているカーソルでgetMoreを実行するときにタイムアウトを設定できます。

デフォルトは false です。

次の値を返します。~cursor.tailable()がアタッチされているカーソル

追尾可能 (tailable) カーソルは、 Cappedコレクションに対してコレクションスキャンを実行します。 コレクションの末尾に到達しても開いたままになります。 アプリケーションは、新しいデータがコレクションに挿入されたら、追尾可能 (tailable) カーソルを反復処理し続けることができます。

awaitDatatrueの場合、カーソルが Capped コレクションの末尾に到達すると、 mongodはタイムアウト間隔だけクエリ スレッドをブロックし、新しいデータの受信を待機します。 新しいデータがCappedコレクションに挿入されると、 mongodはブロックされたスレッドを起動して次のバッチをクライアントに返すようにシグナルを送信します。

追尾可能 (tailable) カーソル 」を参照してください。

戻る

cursor.sort

項目一覧