-
Notifications
You must be signed in to change notification settings - Fork 207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add Bypass system cache option to Copy/Move dialog #756
base: master
Are you sure you want to change the base?
Conversation
Setup Bypass system cache vi COPY_FILE_NO_BUFFERING flag for CopyFileEx windows api function only
Kudos, SonarCloud Quality Gate passed! |
On general idea: Sounds interesting, but do you just think it will be useful, or have you actually measured it and noticed a substantial difference? On implementation:
|
Спасибо за комментарий,
|
в дополнение.... 5 возможно использование предела размера файла в качестве переключателя было моим поспешным решением, потому как затеняет причину использования отключения системного кэша |
+1 for a control to ensure the completion of a write operation is sequenced before the closing of the dialog. Off by default of course. Also, a well-written explanation in the help topic(s) is a must (I can help here). Now, I am not sure that synchronizing the completion of a write operation (main goal here?) and turning off system cache are synonymous. If Far performs an async I/O and closes the dialog as soon as writing of the last buffer was initiated (I do not know; did not check), the user still cannot be sure that the data were successfully written. |
я записал ролик, как ведет себя система при копировании файла без COPY_FILE_NO_BUFFERING и с COPY_FILE_NO_BUFFERING |
1 да это не основная цель, хотя конечно можно рассмотреть и этот вариант для параноиков |
Yep, you're right. But by this logic manual limit doesn't make much sense too: there always can be too many "small" files. Perhaps a single checkbox "Bypass write cache", not persisted anywhere, would be the optimal choice. |
да я тоже думаю что достаточно одного флага, без сохранения состояния. |
Summary
Обход системного кэша при копировании/перемещении больших файлов между папками или между разными дисками
References
Checklist
If not checked, I accept that this work might be rejected in favor of a different grand plan.
Details
Мне видится что будет полезным отключать системный кэш, для таких операций ( позволяет ускорить процесс по времени и исключить вытеснение пользовательских данных из системного кэша на файловых серверах)
Обход системного кэша, осуществляется через установку флага COPY_FILE_NO_BUFFERING при вызове функции CopyFileEx.
Дополнительно введен минимальный размер файла для которого данный флаг устанавливается
Заранее прошу извинить если что-то забыл указать по данному улучшению, я делаю это впервые.