Gestion des blocs de données par interrogation

Outre l’utilisation d’une fonction de rappel, vous pouvez interroger le membre dwFlags d’une structure WAVEHDR pour déterminer quand un périphérique audio est terminé avec un bloc de données. Il est parfois préférable d’interroger dwFlags plutôt que d’attendre qu’un autre mécanisme reçoit des messages des pilotes. Par exemple, après avoir appelé la fonction waveOutReset pour libérer des blocs de données en attente, vous pouvez immédiatement interroger pour vous assurer que les blocs de données ont été libérés avant d’appeler waveOutUnprepareHeader et de libérer de la mémoire pour le bloc de données.

Vous pouvez utiliser l' _ indicateur WHDR Done pour tester le membre dwFlags . Dès que l’indicateur WHDR _ done est défini dans le membre dwFlags de la structure WAVEHDR , le pilote est terminé avec le bloc de données.