Информация об изменениях

Сообщение Re: как пользоваться std::filesystem::directory_iterator? от 05.09.2023 14:03

Изменено 05.09.2023 15:19 DiPaolo

Re: как пользоваться std::filesystem::directory_iterator?
BFE>Допустим вызов it.increment(errCode) вернул ошибку. Что следует предпринять в этом случае? Попытаться вызвать it.increment(errCode) ещё раз? Начать сначала?
Зависит от логики приложения. Первое, что приходит на ум, и самое простое — начинать итерирование заново. Но если у вас ваш второй процесс очень часто удаляет/добавляет файлы, то нужно как-то иначе организовать обработку.

BFE>И вообще, что должно происходить в таком случае?

BFE>Это ошибка в реализации std::experimental::filesystem под Debian для файловой системы ext4?
BFE>Если — да, то исправлена ли это ошибка в новых версиях?
BFE>Или это не ошибка и так и задумано? Тогда как этим пользоваться?

https://en.cppreference.com/w/cpp/filesystem/directory_iterator:

If a file or a directory is deleted or added to the directory tree after the directory iterator has been created, it is unspecified whether the change would be observed through the iterator.

Re: как пользоваться std::filesystem::directory_iterator?
BFE>Допустим вызов it.increment(errCode) вернул ошибку. Что следует предпринять в этом случае? Попытаться вызвать it.increment(errCode) ещё раз? Начать сначала?
Зависит от логики приложения. Первое, что приходит на ум, и самое простое — начинать итерирование заново. Но если у вас ваш второй процесс очень часто удаляет/добавляет файлы, то нужно как-то иначе организовать обработку.

BFE>И вообще, что должно происходить в таком случае?

BFE>Это ошибка в реализации std::experimental::filesystem под Debian для файловой системы ext4?
BFE>Если — да, то исправлена ли это ошибка в новых версиях?
BFE>Или это не ошибка и так и задумано? Тогда как этим пользоваться?

https://en.cppreference.com/w/cpp/filesystem/directory_iterator:

If a file or a directory is deleted or added to the directory tree after the directory iterator has been created, it is unspecified whether the change would be observed through the iterator.