Synchroniser efficacement deux processus. [C/C++] - C++ - Programmation
Marsh Posté le 16-06-2003 à 15:50:07
Merci qd même, mais si je poste ici c'est que j'attends une réponse... CodeProject, c'est sympa, mais s'il me faut une heure pour trouver une page parlant de loin de mon pb spécifique
Marsh Posté le 16-06-2003 à 16:25:51
SetThreadPriority() pour les threads
SetPriorityClass pour les process
Marsh Posté le 16-06-2003 à 16:26:48
Konar a écrit : SetThreadPriority() pour les threads |
Oui, mais justement, sous windows, apparemment c'est parfois approximatif...
Marsh Posté le 16-06-2003 à 16:34:28
leFab a écrit : |
t'as vu ca ou ?
met un process ki prend 100% du cpu en high ou realtime, tu verras si c'est approximatif...
Marsh Posté le 16-06-2003 à 16:41:12
Konar a écrit : |
Bien sur que si tu mets UN thread en TIME_CRITICAL dans un process en REALTIME tu bouffera tt ton temps CPU.
Mais ça fait un bout de temps que je manipule tout ça et il se trouve que dans le cas de plusieurs process et thread de priorité équivalente, cette "équivalence" est assez approximative et machine-dépendante.
Marsh Posté le 16-06-2003 à 16:46:59
vu ton pb de départ (synchroniser efficacement deux processus, un ayant priorité sur l'autre, les deux ayant une priorité max par rapport aux éventuels autres processus), tu mets le processus le plus important en high, l'autre en above normal et voila.
apres, est-ce que windows gere tout ca de la facon qu'il faut, je pense ke oui, meme si c'est evidemment pas parfait comme tu l'as souligné.
Marsh Posté le 16-06-2003 à 15:15:49
Bon, la gestion des tâches sous windows étant apparemment foireuse, j'aimerais avoir qq pistes pour synchroniser efficacement deux processus, un ayant priorité sur l'autre, les deux ayant une priorité max par rapport aux éventuels autres processus.
Je peux utiliser un ordonanceur externe qui lancera les fonctions de chacun des processus à une cadence définie (messages->callbacks).
Je peux utiliser un sémpahore relaché et repris plusieurs fois par la tâche peu prioritaire et pris une fois et relaché une fois par la tâche prioritaire...
Des solutions plus judicieuses / commentaires ?
Merci
---------------
L'ennemi est con : il croit que c'est nous l'ennemi, alors que c'est lui ! (Desproges)