32 lines
742 B
Java
32 lines
742 B
Java
//: concurrency/ResponsiveUI.java
|
|
// User interface responsiveness.
|
|
// {RunByHand}
|
|
|
|
class UnresponsiveUI {
|
|
private volatile double d = 1;
|
|
public UnresponsiveUI() throws Exception {
|
|
while(d > 0)
|
|
d = d + (Math.PI + Math.E) / d;
|
|
System.in.read(); // Never gets here
|
|
}
|
|
}
|
|
|
|
public class ResponsiveUI extends Thread {
|
|
private static volatile double d = 1;
|
|
public ResponsiveUI() {
|
|
setDaemon(true);
|
|
start();
|
|
}
|
|
public void run() {
|
|
while(true) {
|
|
d = d + (Math.PI + Math.E) / d;
|
|
}
|
|
}
|
|
public static void main(String[] args) throws Exception {
|
|
//! new UnresponsiveUI(); // Must kill this process
|
|
new ResponsiveUI();
|
|
System.in.read();
|
|
System.out.println(d); // Shows progress
|
|
}
|
|
} ///:~
|