(PECL mongo >=1.5.0)
MongoClient::killCursor — Kills a specific cursor on the server
$server_hash
, int|MongoInt64 $id
)In certain situations it might be needed to kill a cursor on the server. Usually cursors time out after 10 minutes of inactivity, but it is possible to create an immortal cursor with MongoCursor::immortal() that never times out. In order to be able to kill such an immortal cursor, you can call this method with the information supplied by MongoCursor::info().
server_hash
The server hash that has the cursor. This can be obtained through MongoCursor::info().
id
The ID of the cursor to kill. You can either supply an int containing the 64 bit cursor ID, or an object of the MongoInt64 class. The latter is necessary on 32 bit platforms (and Windows).
Returns TRUE
if the method attempted to kill a cursor, and FALSE
if
there was something wrong with the arguments (such as a wrong
server_hash
). The return status does not
reflect where the cursor was actually killed as the server does
not provide that information.
This method displays a warning if the supplied
server_hash
does not match up with an existing
connection. No attempt to kill a cursor is attempted in that case either.
Example #1 MongoClient::killCursor() example
This example shows how to connect, do a query, obtain the cursor information and then kill the cursor.
<?php
$m = new MongoClient();
$c = $m->testdb->collection;
$cursor = $c->find();
$result = $cursor->next();
// Now the cursor is valid, so we can get the hash and ID out:
$info = $cursor->info();
// Kill the cursor
MongoClient::killCursor( $info['server'], $info['id'] );
?>