Функция JetTerm

Применимо к: Windows | Windows Сервером

Функция JetTerm

Функция жеттерм инициирует завершение работы экземпляра, инициализированного жетинит.

Жеттерм также можно использовать для уничтожения неинициализированного экземпляра, созданного с помощью жеткреатеинстанце.

    JET_ERR JET_API JetTerm(
      __in          JET_INSTANCE instance
    );

Параметры

вхождение

Указывает экземпляр, используемый для этого вызова.

Windows 2000: Этот параметр пропускается и всегда должен иметь значение NULL.

Windows XP и более поздних версий: Этот параметр перегружен. если ядро работает в устаревшем режиме (режим совместимости Windows 2000), где поддерживается только один экземпляр, этот параметр может иметь значение NULL или содержать фактический экземпляр, возвращаемый функцией жетинит. Если ядро работает в режиме с несколькими экземплярами, этот параметр должен быть указателем на экземпляр, созданный с помощью жеткреатеинстанце.

Возвращаемое значение

Эта функция возвращает JET_ERR DataType с одним из следующих кодов возврата. дополнительные сведения о возможных ошибках подсистемы ESE см. в разделе ошибки расширенных служба хранилища Engine и параметры обработки ошибок.

Код возврата

Описание

JET_errSuccess

Операция выполнена успешно.

JET_errInvalidParameter

Один из указанных параметров содержал непредвиденное значение, или сочетание нескольких параметров привело к непредвиденному результату. Эта ошибка будет возвращена функцией жеттерм , когда модуль находится в режиме с несколькими экземплярами и когда пинстанце ссылается на недопустимый экземпляр.

Windows XP: это возвращаемое значение вводится в Windows XP.

JET_errNotInitialized

Операция не может быть завершена, так как экземпляр еще не инициализирован.

JET_errTermInProgress

Операция не может быть завершена, так как работа экземпляра завершается.

JET_errRestoreInProgress

Невозможно выполнить операцию, так как в экземпляре выполняется операция восстановления.

JET_errBackupInProgress

Операция не может быть завершена, так как в экземпляре выполняется операция резервного копирования.

JET_errTooManyActiveUsers

Не удается завершить работу экземпляра, так как в настоящий момент имеются сеансы с активными транзакциями для указанного экземпляра. Эта ошибка возникает только в том случае, если используется JET_bitTermComplete.

Если эта функция завершается, работа указанного экземпляра будет завершена. Кроме того, этот экземпляр будет закрыт и сделан недоступным для любого API, который принимает экземпляр. Все остальные объекты, связанные с экземпляром, например сеансы, также будут закрыты. Состояние файла контрольных точек, файлов журнала транзакций и файлов базы данных, присоединенных к экземпляру, будет изменено в процессе завершения работы.

Если эта функция завершается ошибкой в результате ошибки использования, экземпляр остается в инициализированном состоянии и ничего не меняется. В противном случае экземпляр по-прежнему завершает работу, как в случае успешного выполнения. Разница заключается в том, что экземпляру потребуется выполнить восстановление после сбоя при следующей инициализации. Ядро попытается очистить как можно больше данных, чтобы максимально увеличить требуемый объем восстановления. По сути, такой сбой жеттерм не отличается от сбоя процесса.

Remarks

Если ведущий процесс экземпляра завершается по какой-либо причине, прежде чем жеттерм успешно вызывается для этого экземпляра, считается, что экземпляр находится в состоянии сбоя. Восстановление после сбоя произойдет при следующей попытке инициализации этого экземпляра.

Требования

Требование Значение

Клиент

требуется Windows Vista, Windows XP или Windows 2000 Professional.

Server

требуется Windows server 2008, Windows server 2003 или сервер Windows 2000.

Header

Объявлено в ESENT. h.

Библиотека

Используйте ESENT. lib.

DLL

Требуется ESENT.dll.

См. также:

расширяемые файлы служба хранилища Engine
жеткреатеинстанце
JET_ERR
JET_GRBIT
жетинит
JET_INSTANCE
JetTerm2