Primitives pour la programmation concurrente sur Windows ... - EPFL
Primitives pour la programmation concurrente sur Windows ... - EPFL
Primitives pour la programmation concurrente sur Windows ... - EPFL
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