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

Résolu
Hou$$am -  
chuka Messages postés 965 Date d'inscription   Statut Membre Dernière intervention   -
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

mimi
 
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   Statut Membre Dernière intervention   378
 
public class Main
{
public static void main (String args[]) throws IOException
{
System.out.println("Nous ne sommes pas là pour faire tes devoirs!!");
}
}
0