le Client utilise un sméaphore pour cuir son plat

This commit is contained in:
trochas
2024-12-08 13:38:07 +01:00
parent d414136443
commit c92ba8c0f4
4 changed files with 9 additions and 80 deletions

View File

@@ -1,35 +1,11 @@
import java.util.Random;
public class Cuisinier extends Thread {
private Stand_de_cuisson stand;
public Cuisinier(Stand_de_cuisson stand_de_cuisson){
this.stand= stand_de_cuisson;
public Cuisinier(){
this.setDaemon(true);
}
public void run(){
while(Thread.currentThread().isDaemon()){
attendreClient();
}
}
private void attendreClient(){
Client client = stand.getClient();
synchronized(stand){
try{
while(client==null){
stand.wait();
client= stand.getClient();
}
}
catch(InterruptedException e){
e.printStackTrace();
}
}
faire_cuire(client);
}
public void faire_cuire(Client client){
System.out.println("# Cuisinier : fait cuire le plat de " + client.getNameClient()) ;
try{
@@ -39,7 +15,5 @@ public class Cuisinier extends Thread {
e.printStackTrace();
}
System.out.println("# Cuisinier : a fini de cuire le plat de " + client.getNameClient()) ;
stand.nextClient();
stand.finir_cuit();
}
}