MongoClient::killCursor

(PECL mongo >=1.5.0)

MongoClient::killCursorElimina un cursor específico del servidor

Esta extenisón que define este método está obsoleta. En su lugar debe usarse la extensión MongoDB. No hay equivalente para este método en la nueva extensión.

Descripción

public MongoClient::killCursor ( string $server_hash , int|MongoInt64 $id ) : bool

En ciertas situaciones, podría ser necesario eliminar un cursor del servidor. Normalmente, los cursores expiran tras 10 minutos de inactividad, pero es posible crear un cursor inmortal con MongoCursor::immortal() que nunca expira. Para poder eliminar dicho cursor inmortal, se puede llamar a este método con la información proporcionada por MongoCursor::info().

Parámetros

server_hash

El hash del servidor que posee el cursor. Puede obtenerse a través de MongoCursor::info().

id

El ID del cursor a eliminar. Se puede proporcionar un valor de tipo int que contenga el ID de 6a bits del cursor , o un objeto de la clase MongoInt64. Lo último es necesario en plataformas de 32 bits (y en Windows).

Valores devueltos

Devuelve TRUE si el método intentó eliminar el cursor, y FALSE si había algo erróneo en los argumentos (tal como un server_hash erróneo). El estado devuelto no refleja dónde fue elminado el cursor, ya que el servidor no proporciona tal información.

Errores/Excepciones

Este método muestra una advertencia si el server_hash proporcionado no coincide con una conexión existente. No intentar eliminar un cursor tampoco se intenta en este caso.

Ejemplos

Ejemplo #1 Ejemplo de MongoClient::killCursor()

Este ejemplo muestra cómo conectarse, realizar una consulta, obtener la información del cursor y luego eliminarlo.

<?php
$m 
= new MongoClient();
$c $m->testdb->collection;
$cursor $c->find();
$resultado $cursor->next();

// Ahora el cursor es válido, por lo que se puede obtener el hash y el ID:
$info $cursor->info();

// Eliminar el cursor the cursor
MongoClient::killCursor$info['server'], $info['id'] );
?>