13.07.2015 Views

Primitives pour la programmation concurrente sur Windows ... - EPFL

Primitives pour la programmation concurrente sur Windows ... - EPFL

Primitives pour la programmation concurrente sur Windows ... - EPFL

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Communication pipes message queues mailslots mémoire partagée fichiers partagésInformatique du temps réel <strong>Primitives</strong> de NT 21© J.-D. Decotignie, 2001Named Pipe - client connexion par CreateFile vérification de l'existence parWaitNamedPipe(name,timeout) accès par ReadFile ou WriteFile supporte entrées et sorties superposées PeekNamePipe <strong>pour</strong> voir s'il y a quelque choseInformatique du temps réel <strong>Primitives</strong> de NT 23© J.-D. Decotignie, 2001Named Pipes uni ou bidirectionnel créationHANDLE CreateNamedPipe(LPCTSTR lpPipeName, // pointeur <strong>sur</strong> nomDWORD fdwOpenMode, // lecture, écritureDWORD fdwPipeMode, // bloquant, car/msgDWORD nMaxInstances, // nombre de clientsDWORD cbOutBuf, // taille des tamponsDWORD cbInBuf,DWORD dwTimeOut, // timeout en accèsLPSECURITY_ATTRIBUTES lpsa); attente de connexionBOOL ConnectNamedPipe(HANDLE hpipe, LPOVERLAPPED lpo);Informatique du temps réel <strong>Primitives</strong> de NT 22© J.-D. Decotignie, 2001Message queues seulement vers un thread qui gère une fenêtre seulement <strong>pour</strong> les messages définis dans le système on ne passe que son numéro PostMessage: envoi non bloquant SendMessage: envoi bloquant idem + timeout idem + call back GetMessage: réception bloquanteInformatique du temps réel <strong>Primitives</strong> de NT 24© J.-D. Decotignie, 2001

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!