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


Управление очисткой и очисткой

RDBSS предоставляет ряд процедур для очистки и очистки структур FOBX, когда они больше не нужны.

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

В настоящее время очистка реализована для SRV_CALL, NET_ROOT и V_NET_ROOT структур. Очистка FCB обрабатывается отдельно. FoBX может и всегда должен быть синхронно завершен. Единственная структура данных, которая должна быть потенциально включена для очистки завершения, — это SRV_OPEN структуры.

Процесс очистки, реализованный в RDBSS, в настоящее время не будет потреблять системные ресурсы, пока не возникнет необходимость в очистке завершения. Первая запись, помеченная для очистки завершения, приведет к отправке запроса таймера для средства очистки. В текущей реализации запросы таймера публикуются как одноразовые запросы таймера. Это означает, что нет никаких гарантий относительно интервала времени, в течение которого записи будут завершены. Механизм активации scavenger является потенциальным кандидатом на тонкую настройку на более позднем этапе.

Процедуры очистки и очистки RDBSS включают следующее:

Подпрограмма Описание

RxPurgeAllFobxs

Эта процедура очищает все структуры FOBX, связанные с сетевым мини-перенаправлением.

RxPurgeRelatedFobxs

Эта процедура очищает все структуры FOBX, связанные со структурой NET_ROOT.

RxScavengeAllFobxs

Эта подпрограмма очищает все структуры FOBX, связанные с заданным объектом устройства сетевого мини-перенаправления.

RxScavengeFobxsForNetRoot

Эта процедура очищает все структуры FOBX, связанные с заданной NET_ROOT структурой.