Если приложение Windows работает с файлом, оно должно быть немедленно закрыто, потому что, по-видимому, они закрыли свои файловые дескрипторы. Нет задержки во времени, чтобы разблокировать файл после операции закрытия файла.
Если программа забывает закрыть свои файловые дескрипторы, но закрывается, Windows освободит ее для них (только не сразу). Обычно это не долго, но это может быть любое количество времени, я не видел, чтобы это заняло больше пары секунд. Но должна быть сделана правильная очистка, чтобы избежать блокировки.
Стоит также отметить, что не все программы открывают файлы заблокированным способом. Они могут открыть файл, указав, какой тип доступа они хотели бы предоставить другим процессам, и они также могут заблокировать части файла. Они могут открыть файл с полными правами на чтение / запись для других процессов.
Если у вас нет контроля над процессом, который не закрывает свои файловые дескрипторы, но вам нужно его выполнить, вы можете написать какой-то цикл, чтобы продолжить попытки файла в течение нескольких секунд.