Question

Je vous écris une application en C ++ avec Qt sur Mac. Je veux détecter les disques étant montés et démontés, donc je suis en utilisant le cadre de DiskArbitration. Je me suis inscrit des fonctions de rappel via DARegisterDiskAppearedCallback et DARegisterDiskDisappearedCallback mais ceux-ci seulement le feu quand il y a un runloop.

Quelle est la meilleure façon de commencer une runloop appropriée?

QThread avec CFRunLoopRun (semble un peu excessive)?

S'il vous plaît donner des détails, je suis pas très au courant des fils.

Était-ce utile?

La solution

Sur OS X 10.7+ vous pouvez utiliser DASessionSetDispatchQueue d'avoir vos callbacks sur une file d'attente invoqués d'expédition de votre choix. Vous pouvez ensuite transmettre les données correspondantes de la fonction de rappel sur votre boucle d'événement Qt régulier.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top