Application des semaphore pour la resolution du probleme des trains

Soyez le premier à donner votre avis sur cette source.

Vue 10 455 fois - Téléchargée 887 fois

Description

Salut donc voila la source présenté ici et l'application des sémaphores pour la résolution du problème des train
Ce problème est posé lorsque plusieurs trains veux passer par une seul rail
J'ai utilisé une class sémaphore et autre qui implémente la class 'sémaphore'

Source / Exemple :


/**

  • Algorithme d'une sémaphore
  • @author YERMES MOHAMMED EL AMINE
  • UNIVERSITE DE MASCARA
  • @version 1.0 20/08/2008
  • /
class Semaphore { protected int value = 0; protected Semaphore() {value = 1;} protected Semaphore(int valeur) {value = valeur;} public synchronized boolean occupe() { if (value>0) return false; else return true; } /* public synchronized void signaler() { value = value + 1; notify(); } public synchronized void initialise() { value = value - 1; }*/ public synchronized void P() { value--; if (value < 0) { while (true) { try { wait(); break; } catch (InterruptedException e) { System.err.println ("Semaphore.P()"); continue; } } } } public synchronized void V() { value++; if (value <= 0) notify(); } public synchronized int value() { return value; } public synchronized String toString() { return String.valueOf(value); } }

Conclusion :


J'attends vos remarques et suggestion MERCI de bien lire mon code

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Messages postés
58
Date d'inscription
mercredi 30 juillet 2008
Statut
Membre
Dernière intervention
1 février 2018

salut SMUTSONBERG j'aimerais bien savoir ton opinion sur le code et si tu as le testé
Messages postés
3
Date d'inscription
samedi 25 février 2006
Statut
Membre
Dernière intervention
5 avril 2010

Lol sympa on a du faire un truc similaire pour les cours mais codé en c. On a même eu l'occasion de le tester sur une petite maquette de train.. apparemment c'est un labo courant :)
Messages postés
58
Date d'inscription
mercredi 30 juillet 2008
Statut
Membre
Dernière intervention
1 février 2018

L'interet ici est l'utilisation des sémaphores pour la résolution du problème. si vous lancez les threads et vous laissez le JVM s'occupes d'eux .... sa résoud pas le problème "la notion des sections critique et ressources critiques"
Messages postés
514
Date d'inscription
mercredi 19 mars 2003
Statut
Membre
Dernière intervention
1 mars 2009

Je suis pas un expert en multi-threading, mais d'après le peu que je vois, y a comme un soucis. Les sémaphores, c'est quelque chose à utiliser dans un langage de bas niveau (typiquement le C). Le Java a sa propre gestion des threads, avec les moniteurs. Je pense que t'auras plus d'explication sur Wikipedia.
Messages postés
58
Date d'inscription
mercredi 30 juillet 2008
Statut
Membre
Dernière intervention
1 février 2018

J'attends vos commentaires et suggestions
Afficher les 7 commentaires

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.