Здравствуйте, -prus-, Вы писали:
P>>>1. что файлом закончена работа и больше туда не будут записываться данные, все хендлы закрыты и тп. Это вроде как в Pre/Post-Cleanup можно логику сделать
_>>данные не будут записываться только после Close, после Cleanup могут быть еще paging write для сброса кеша.
P>только после Close на все FileObject's для файла, как я понимаю?
так это и есть Close, когда последний FO уходит. Поэтому его можно часами ждать.
FO FO FO
\ | /
FCB
FO — это хендл с точки зрения юзера, FCB — файл. Когда закрывается FO (handle) — это Cleanup, а когда все FO ушли и закрывается(уничтожается) FCB — это Close. Кроме хендлов пользователя FO может придерживатся кеш-менеджером (если были кешированные операции) и когда он его закроет — неведомо. На системе где нет нехватки ресурсов это могут быть десятки часов и более.