SYCHRONOSATION DE TACHES!!

BABEM Messages postés 6 Date d'inscription vendredi 16 janvier 2009 Statut Membre Dernière intervention 1 mai 2010 - 29 janv. 2009 à 22:16
BABEM Messages postés 6 Date d'inscription vendredi 16 janvier 2009 Statut Membre Dernière intervention 1 mai 2010 - 30 janv. 2009 à 10:30
salut les amis...je vous demande s.v.p de m'aider dans se problème...
je veut faire un programme qui fait une simulation de la synchronisation entre trois jobs:
- le premier: un processus lecture, qui reçoit, ligne par ligne les message d'un fichier texte et les range dans un tampon d'entrée borné.
- le deuxième: un processus traitement, qui prend chaque ligne de texte(message) du tampon d'entrée, compte le nombre de consonnes et le nombre de voyelles et les dépose dans un tampon de sortie
- le troisième: un processus impression, prend les données du tampon de sortie et les envoie à l'imprimant (seulement une simulation il suffit d'affiche les résultats).
les condition de synchronisation:
- le traitement doit s'effectuer après la lecture et l'impression après le traitement.
- il ne faut pas lire d'un tampon vide ni écrire dans un tampon plein.
- la solution doit permettre l'exécution simultanée d'operation sur le tampon d'entrée et sur le tampon de sortie.
- les trois processus doivent s'exécuter en parallèle.
je dois créer chaque processus sous form de processus léger(thread)- je travail sur jcreator de xinox-
et surement synchroniser les trois processus..
alos les amis si vous pouvez m'aider...et merci d'avance....au plaisir 

2 réponses

dvoraky Messages postés 744 Date d'inscription dimanche 1 avril 2007 Statut Membre Dernière intervention 9 mai 2010 8
30 janv. 2009 à 09:59
Salut,

Je suis pas expert en thread, je m'y suis mis récemment, par contre, pour synchroniser des threads ensemble il existe un petit mot clé "synchronized" qui, il me semble, te serais particulièrement utile.

Sinon, il existe différente solutions pour resynchroniser les threads. Toi visiblement, si le tampon est déjà rempli, il ne faut pas en rajouter (ne pas faire une pile quoi.... perso, j'utiliserai plutot une pile du style FIFO...), donc il faudrait que tu mettes le thread en pause du temps que l'autre thread le vide...
T'es sur qu'il te faut impérativement passer par 3 threads différents?
Moi, je vois plutot 3 étapes :

Lecture du fichier ligne par ligne :
   Compte le nombre de consonnes et voyelles de la ligne
   Envoit des comptes sur l'imprimante.

Non?

<hr width="100%" size="2" />
 C'est après des heures de codage que j'ai compris pourquoi les créateurs de Java ont choisi une tasse de café comme logo...
0
BABEM Messages postés 6 Date d'inscription vendredi 16 janvier 2009 Statut Membre Dernière intervention 1 mai 2010
30 janv. 2009 à 10:30
dvoraky..merci pour répondre..
mon probème est un travail précis..je dois programmer les 3 processus séparément..merci pour votre aide..je vais  les bien utiliser..merci a+

 
0
Rejoignez-nous