Я крайне редко делаю подходы к программингу на ПК, но у меня в
памяти отложилось что при открытии файлов в винде можно задать
аттрибут OVERLAPPED, что позволяет не блокировать текущий процесс
при чтении. Но я сам ни разу не пользовался, к тому-же уже забыл
:-)