Est-_write dans io.h un blocage d'appel?
-
01-10-2019 - |
Question
J'ai hérité du code qui, pour initialiser un peu de matériel, écrit quelques octets et attend un retour. Pour ce faire, il appelle la fonction _write
de io.h
. De mes tests, on dirait qu'il est enfermer à ce moment-là. Mes questions sont les suivantes:
- Est-ce que la fonction d'une fonction de blocage?
- Est-il possible de fixer un délai d'attente?
- Y at-il une fonction alternative non-bloquant je pourrais utiliser à la place?
La solution
Si vous voulez faire async E / S sous Windows puis utilisez soit les API Win32 directement (consultez docs pour WriteFileEx / ReadFileEx, qui contiennent des pointeurs vers des arrière-plan général sur async I / O vs synchronisation) ou envisager boost :: asio .
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow