Función JetTerm

Se aplica a: Windows | Windows Server

Función JetTerm

La función JetTerm inicia el apagado de una instancia inicializada por JetInit.

JetTerm también se puede usar para destruir una instancia no inicializada creada por JetCreateInstance.

    JET_ERR JET_API JetTerm(
      __in          JET_INSTANCE instance
    );

Parámetros

instance

Especifica la instancia que se va a usar para esta llamada.

Windows 2000: Este parámetro se omite y siempre debe ser NULL.

Windows XP y versiones posteriores: Este parámetro está sobrecargado. Si el motor funciona en modo heredado (modo de compatibilidad de Windows 2000) donde solo se admite una instancia, este parámetro podría ser NULL o podría contener la instancia real devuelta por JetInit. Si el motor funciona en modo de varias instancias, este parámetro debe ser un puntero a una instancia que se creó mediante JetCreateInstance.

Valor devuelto

Esta función devuelve el JET_ERR tipo de datos con uno de los siguientes códigos de retorno. Para obtener más información sobre los posibles errores de ESE, vea Extensible Storage Engine Errors and Error Handling Parameters.

Código devuelto

Descripción

JET_errSuccess

La operación se ha completado correctamente.

JET_errInvalidParameter

Uno de los parámetros proporcionados contenía un valor inesperado o la combinación de varios parámetros produjo un resultado inesperado. JetTerm devolverá este error cuando el motor esté en modo de varias instancias y cuando la pinstancia haga referencia a una instancia no válida.

Windows XP: Este valor devuelto se introduce en Windows XP.

JET_errNotInitialized

La operación no se puede completar porque la instancia aún no se ha inicializado.

JET_errTermInProgress

La operación no se puede completar porque la instancia se está cerrando.

JET_errRestoreInProgress

No es posible completar la operación porque una operación de restauración está en curso en la instancia.

JET_errBackupInProgress

La operación no se puede completar porque una operación de copia de seguridad está en curso en la instancia de .

JET_errTooManyActiveUsers

No se puede apagar la instancia porque actualmente hay sesiones con transacciones activas para la instancia especificada. Este error solo se produce si se usa el JET_bitTermComplete.

Si esta función se ejecuta correctamente, se apagará la instancia especificada. El identificador de instancia también se cerrará y dejará de estar disponible para cualquier API que tome un identificador de instancia. También se cerrarán todos los demás objetos asociados a la instancia, como sesiones. El estado del archivo de punto de comprobación, los archivos de registro de transacciones y los archivos de base de datos adjuntos a la instancia se modificarán durante el proceso de apagado.

Si se produce un error en esta función como resultado de un error de uso, la instancia permanece en un estado inicializado y no cambia nada. De lo contrario, la instancia sigue apagada según el caso correcto. La diferencia es que la instancia tendrá que pasar por la recuperación de bloqueos cuando se inicialice a continuación. El motor intentará vaciar tantos datos como sea posible para minimizar la cantidad de recuperación necesaria. Conceptualmente, este error de JetTerm no es diferente de un bloqueo de proceso.

Observaciones

Si el proceso de host de una instancia se cierra por cualquier motivo antes de que JetTerm se llame correctamente en esa instancia, se considera que la instancia está en un estado bloqueado. La recuperación del bloqueo se producirá en el siguiente intento de inicializar esa instancia.

Requisitos

Requisito Value

Cliente

Requiere Windows Vista, Windows XP o Windows 2000 Professional.

Servidor

Requiere Windows Server 2008, Windows Server 2003 o Windows 2000 Server.

Encabezado

Declarado en Esent.h.

Library

Use ESENT.lib.

Archivo DLL

Requiere ESENT.dll.

Consulte también

Archivos extensibles del motor de almacenamiento
JetCreateInstance
JET_ERR
JET_GRBIT
JetInit
JET_INSTANCE
JetTerm2