Essayer de compléter le programme ;) ( JAVA)

Résolu/Fermé
Hou$$am - 10 janv. 2010 à 12:55
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 - 10 janv. 2010 à 12:58
Bonjour,
Compléter le programme à « trous » donné pour les classes
IHM et Scheduler. Il s’agit de compléter le programme là où vous rencontrez la séquence "…" (pointillés entre guillemets, ne pas considérer les pointillés sans guillemets qui sont là pour
raccourcir le texte) avec les bonnes instructions.

public class IHM "…"{
public Scheduler __scheduler;
...
public IHM(String name, Scheduler s) {
super(name);
this.__scheduler = s;
JPanel control = new JPanel();
JButton init = new JButton("Init");
JButton start = new JButton("Start");
JButton pause = new JButton("Pause");
JButton stop = new JButton("Stop");
// add listeners
init.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { "…";
}
});
start.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { "…";
}
});
pause.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { "…";
}
});
stop.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) { "…";
}
});
...
}
...
}//class IHM
public class Scheduler "…" {
public IHM __ihm = null;
private Thread __thread;
private Vector<Automate> __listOfAutomates;
/** Etat du Scheduler */
private volatile boolean __active = true;
private int __state = 0;//0 -> pause, 1->running
/** Evénements provenant de l’IHM */
private final int EVT_INIT = 0;
private final int EVT_START = 1;
private final int EVT_PAUSE = 2;
private final int EVT_STOP = 3;
private final int EVT_FINISH = 4;
private int __evt = -1;
...
public Scheduler(IHM __ihm) {
...
// Creer et lancer le thread
this.__thread = "…";
this.__thread."…";
}
"…" init() {
__evt = "…"; "…";
}
"…" start() {
__evt = "…"; "…";
}
"…" pause() {
__evt = "…"; "…";
}
...
public void run() {
while (this.__active) {
int r = -1; "…" {
r = __evt;
__evt = -1;
}
if (r == EVT_INIT) {
r = -1;
this.__state = "…";
...
}
if (r == EVT_START) {
r = -1;
this.__state = "…";
...
}
if (r == EVT_PAUSE) {
r = -1;
this.__state = "…";
...
}
//Activer ou non les automates
if (this.__state == 0) {//pause "…" {
try {
System.out.println("Waiting ... "); "…";
} catch (InterruptedException e) {}
}
} else if (this.__state == 1) {//running
for (Automate p : this.__listOfAutomates)
p.activate();
}
this.__ihm.repaint();
try {
Thread.sleep(100);//100 ms
} catch (InterruptedException e) {
}
}//while
}//run
}//Class Scheduler


Finalement, il y a une erreur possible de fonctionnement dans le programme liée à la
synchronisation. Expliquer et corriger
A voir également:

2 réponses

j'ai pa compris vous demander une reponse à une question ou une personne qui fait vos devoirs à votre place ??!!!
0
chuka Messages postés 965 Date d'inscription samedi 11 octobre 2008 Statut Membre Dernière intervention 29 juillet 2010 378
10 janv. 2010 à 12:58
public class Main
{
public static void main (String args[]) throws IOException
{
System.out.println("Nous ne sommes pas là pour faire tes devoirs!!");
}
}
0