Что произойдет, если я открою и fstream
с данными в нем, используя флаг std::ios::trunc
, не закрывая процесс, а мой процесс содержит boost::interprocess::file_lock()
?
Я ожидаю, что ОС сохранит мою блокировку файлов?Или ОС будет прозрачно отменять регистрацию блокировки при закрытии файла?Будем благодарны как за Windows, так и за POSIX.
edit
Моя главная цель - обрезать файл конфигурации и переписать его.Вторичная цель файла - предотвратить запуск других эквивалентных демонов.Так что, если есть другой способ использовать boost или c ++ stl для усечения файла без его закрытия, у меня все в ушах: D