Поделиться через


Функция CcUnpinRepinnedBcb (ntifs.h)

В CcUnpinRepinnedBcb подпрограмма открепленного блока управления буфером (BCB).

Синтаксис

void CcUnpinRepinnedBcb(
  [in]  PVOID            Bcb,
  [in]  BOOLEAN          WriteThrough,
  [out] PIO_STATUS_BLOCK IoStatus
);

Параметры

[in] Bcb

Указатель на реплицированный BCB.

[in] WriteThrough

Задайте значение TRUE, если bcB должен быть записан через.

[out] IoStatus

Указатель на структуру IO_STATUS_BLOCK. Если вызов CcUnpinRepinnedBcb выполнен, IoStatus.Status имеет значение STATUS_SUCCESS. В противном случае для него задан соответствующий код ошибки NTSTATUS. IoStatus.Information задано фактическое количество байтов, которые были успешно удалены на диск.

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

Никакой

Замечания

Файловые системы вызывают CcUnpinRepinnedBcb для записи ранее закрепленного буфера на диск.

Каждый вызов CcRepinBcb должен соответствовать последующему вызову CcUnpinRepinnedBcb.

Так как CcUnpinRepinnedBcb получает исключительно ресурс BCB, вызывающий объект должен быть очень осторожным, чтобы избежать взаимоблокировок. Если это возможно, вызывающий объект не должен иметь ресурсов. В противном случае вызывающий объект должен гарантировать, что он не имеет ничего другого закрепленного в том же кэшированном файле. Обычно CcUnpinRepinnedBcb вызывается во время завершения запроса, после освобождения всех остальных ресурсов.

CcUnpinRepinnedBcb синхронно записывает буфер (для запросов на запись) и открепает bcB, открепленный предыдущим вызовом CcRepinBcb.

Требования

Требование Ценность
целевая платформа Всеобщий
заголовка ntifs.h (include Ntifs.h)
библиотеки NtosKrnl.lib
DLL NtosKrnl.exe

См. также

CcRepinBcb