Funzione JetTerm2
Si applica a: Windows | Windows Server
Funzione JetTerm2
La funzione JetTerm2 avvia l'arresto di un'istanza inizializzata da JetInit.
JetTerm2 può anche distruggere un'istanza non inizializzata creata da JetCreateInstance.
JET_ERR JET_API JetTerm2(
__in JET_INSTANCE instance,
__in JET_GRBIT grbit
);
Parametri
Istanza
Istanza da usare per questa chiamata.
Windows 2000: Questo parametro viene ignorato e deve sempre essere NULL.
Windows XP e versioni successive: Questo parametro è in overload. Se il motore è operativo in modalità legacy (modalità di compatibilità windows 2000) in cui è supportata una sola istanza, questo parametro potrebbe essere NULL o potrebbe contenere l'istanza effettiva restituita da JetInit. Se il motore è operativo in modalità multiistanza, questo parametro deve essere un puntatore a un'istanza creata usando JetCreateInstance.
grbit
Gruppo di bit che contengono le opzioni da usare per questa chiamata, che includono zero o più dei valori seguenti.
Valore |
Significato |
---|---|
JET_bitTermComplete |
Richiede che l'istanza venga arrestata in modo pulito. Tutte le operazioni di pulizia facoltative che normalmente verranno eseguite in background in background vengono completate immediatamente. |
JET_bitTermAbrupt |
Richiede che l'istanza venga arrestata il più rapidamente possibile. Qualsiasi lavoro facoltativo che normalmente verrà eseguito in background in fase di esecuzione viene abbandonato. Nota Questa opzione può causare una perdita di spazio temporanea o permanente nel database. Questo spazio perso può sempre essere recuperato tramite una deframmentazione offline del database. |
JET_bitTermStopBackup |
Richiede che l'istanza venga arrestata anche se è in corso un backup. In genere, un backup in sospeso causerà l'esito negativo di JetTerm con JET_errBackupInProgress. Quando questo parametro non è presente, il relativo valore viene presunto essere JET_bitTermAbrupt. |
JET_bitTermDirty |
Richiede che l'istanza venga arrestata con tutti i database collegati lasciati in uno stato sporco. Windows 7: JET_bitTermDirty è stato introdotto in Windows 7. |
Valore restituito
Questa funzione restituisce il tipo di dati JET_ERR con uno dei codici restituiti seguenti. Per altre informazioni sugli errori ESE possibili, vedere Errori del motore di archiviazione estendibili e parametri di gestione degli errori.
Codice restituito |
Descrizione |
---|---|
JET_errSuccess |
Operazione riuscita. |
JET_errBackupInProgress |
L'operazione non può essere completata perché un'operazione di backup è in corso nell'istanza. |
JET_errInvalidParameter |
Uno dei parametri forniti contiene un valore imprevisto o la combinazione di diversi parametri ha restituito un risultato imprevisto. Questo errore verrà restituito da JetTerm quando il motore è in modalità multiistanza e quando pinstance fa riferimento a un'istanza non valida. Windows XP: Questo valore restituito viene introdotto in Windows XP. |
JET_errNotInitialized |
Impossibile completare l'operazione perché l'istanza non è ancora stata inizializzata. |
JET_errTermInProgress |
Impossibile completare l'operazione perché l'istanza viene arrestata. |
JET_errRestoreInProgress |
Non è possibile completare l'operazione perché un'operazione di ripristino è in corso nell'istanza. |
JET_errTooManyActiveUsers |
Impossibile arrestare l'istanza perché sono attualmente presenti sessioni con transazioni attive per l'istanza specificata. Questo errore si verifica solo se viene usato il JET_bitTermComplete. |
Se questa funzione ha esito positivo, l'istanza specificata verrà arrestata. L'handle dell'istanza verrà chiuso e reso non disponibile per qualsiasi API che accetta un handle di istanza. Tutti gli altri oggetti associati all'istanza, ad esempio sessioni, verranno chiusi. Lo stato del file di checkpoint, i file di log delle transazioni e i file di database collegati all'istanza verranno modificati durante il processo di arresto.
Se questa funzione non riesce a causa di un errore di utilizzo, l'istanza rimane in uno stato inizializzato e non cambia nulla. In caso contrario, l'istanza è ancora arrestata come indicato per il caso di esito positivo. La differenza è che l'istanza dovrà passare attraverso il ripristino di arresto anomalo quando viene inizializzata successivamente. Il motore tenterà di scaricare il maggior numero possibile di dati per ridurre al minimo la quantità di ripristino necessaria. Concettualmente, tale errore di JetTerm non è diverso da un arresto anomalo del processo.
Commenti
Vedere JetTerm.
Requisiti
Requisito | Valore |
---|---|
Client |
Richiede Windows Vista, Windows XP o Windows 2000 Professional. |
Server |
Richiede Windows Server 2008, Windows Server 2003 o Windows 2000 Server. |
Intestazione |
Dichiarato in Esent.h. |
Libreria |
Usare ESENT.lib. |
DLL |
Richiede ESENT.dll. |
Vedere anche
File del motore di archiviazione estendibili
JetCreateInstance
JET_ERR
JET_GRBIT
JetInit
JET_INSTANCE
JetTerm