Files
alp-projet/src/main.java
2025-11-10 10:34:25 +01:00

45 lines
1.2 KiB
Java

import java.util.Timer;
import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
import impl.Afficheur;
import impl.Canal;
import impl.CapteurImpl;
import impl.DiffusionAtomique;
import impl.Scheduler;
import interfaces.AlgoDiffusion;
public class main {
static int NB_CANAUX = 3;
public static void main(String[] argv){
Scheduler scheduler = new Scheduler(NB_CANAUX);
CapteurImpl c = new CapteurImpl();
DiffusionAtomique algo = new DiffusionAtomique();
algo.capteur = c;
c.setAlgoDiffusion(algo);
/*
Afficheur a=new Afficheur();
Canal canal=new Canal(c,scheduler,a);
a.setCanal(canal);
c.attach(canal);
*/
for(int i = 0; i<NB_CANAUX; i++){
Afficheur afficheur = new Afficheur();
afficheur.setId(i);
Canal canal = new Canal(c, scheduler, afficheur);
afficheur.setCanal(canal);
c.attach(canal);
}
ScheduledExecutorService clock = scheduler.getScheculer();
clock.scheduleAtFixedRate(() -> c.tick(), 0, 500, TimeUnit.MILLISECONDS);
}
}