NI-DAQmx utilise un modèle de tâche à états pour faciliter l'utilisation et améliorer les performances des drivers.

Le modèle de tâche à états comporte cinq états : Non vérifiée, Vérifiée, Réservée, Programmée et En cours d'exécution. Vous pouvez appeler les fonctions ou les VIs Démarrer une tâche, Arrêter une tâche et Contrôler une tâche pour faire passer la tâche d'un état à un autre. Le modèle de tâche à états est très flexible. Vous pouvez choisir votre niveau d'interaction avec le modèle de tâche à états en fonction des besoins de votre application.



Si vous appelez explicitement une transition d'état qui a déjà eu lieu, elle n'est pas répétée et aucune erreur n'est renvoyée. Par exemple, si la tâche a déjà réservé ses ressources et qu'elle est donc dans l'état Réservée, le fait d'appeler la fonction ou le VI Contrôler une tâche en définissant le paramètre action à Réserver ne réserve pas de nouveau les ressources.

Parfois, l'appel d'une fonction ou d'un VI peut nécessiter plusieurs transitions d'état, comme l'appel de la fonction ou du VI Démarrer une tâche lors de l'état Vérifiée. Dans ces cas, la tâche effectuera une transition implicite entre chacun des états nécessaires pour atteindre l'état final souhaité, comme le montre le diagramme suivant.

Un retour à un état précédent dans le modèle de tâche à états annulera toute transition implicite en plus de la transition explicite demandée. En continuant avec l'exemple ci-dessus, l'appel de la fonction ou du VI Arrêter une tâche après la transition implicite vers l'état En cours d'exécution depuis l'état Vérifiée entraînera le retour de la tâche à l'état Vérifiée, comme le montre le diagramme suivant.