Académique Documents
Professionnel Documents
Culture Documents
CSI2520, Hiver 2007
Fils en Java
public class HelloRunnable implements Runnable {
public void produce() {
int len = 0;
synchronized(list) { // impose un verrou sur la liste
Object justProduced = new Object();
list.addFirst(justProduced);
len = list.size();
list.notifyAll(); // avise les autres fils
} // libere le verrou
System.out.println("List size now " + len);
}
if (mulock.Lock(1000)) { if (mulock.Lock(1000)) {
// do something… // do something…
read_file(); write_file();
} }
mulock.Unlock(); mulock.Unlock();
} }
...
obj.cela(this);
}
…
}
}