TD1: fix thread name setting.
[TD_SR.git] / TD1 / exo3 / Consommateur.java
CommitLineData
18eb400b
JB
1import java.util.concurrent.ThreadLocalRandom;
2
3
4public class Consommateur implements Runnable {
5
6 private BufferCirc buffer;
7
8 public Consommateur(BufferCirc b) {
9 buffer = b;
10 }
11
2ef76f09 12 public Consommateur(BufferCirc b, Thread th, String name) {
18eb400b 13 buffer = b;
2ef76f09 14 setThName(th, name);
18eb400b
JB
15 }
16
2ef76f09
JB
17 public void setThName(Thread th, String name) {
18 th.setName(name);
18eb400b
JB
19 }
20
21 public void run() {
22 Integer val;
23 while (true) {
24 val = (Integer)buffer.preleve();
e018d1ec 25 System.out.println(Thread.currentThread().getName() + " a preleve " + val);
18eb400b
JB
26 try {
27 Thread.sleep(ThreadLocalRandom.current().nextInt(1001));
28 }
7293fe6d 29 catch (InterruptedException e) {
ce28a021 30 System.err.println("InterruptedException: " + e);
7293fe6d 31 }
18eb400b
JB
32 }
33 }
34
35} // fin classe Consommateur