'Closes this cursor.'

def __die(self, synchronous=False):

    if (self.__id and (not self.__killed)):
        if (self.__exhaust and self.__exhaust_mgr):
            self.__exhaust_mgr.sock.close()
        else:
            address = _CursorAddress(self.__address, self.__collection.full_name)
            if synchronous:
                self.__collection.database.client._close_cursor_now(self.__id, address)
            else:
                self.__collection.database.client.close_cursor(self.__id, address)
    if (self.__exhaust and self.__exhaust_mgr):
        self.__exhaust_mgr.close()
    self.__killed = True
