/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
method1();
}
static boolean method2Continue = false;
public static void method1() {
thread.start();
if(true){
for(int i = 0; i < 10000000; i++); // delay to allow method2 to start
System.
out.
println("Allowing method2 to continue"); method2Continue = true;
}
thread.interrupt();
}
public static void method2() {
// ...
System.
out.
println("method2"); while(!method2Continue);
System.
out.
println("method2 has been allowed to continue"); // ...
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCW1ldGhvZDEoKTsKCX0KCXN0YXRpYyBib29sZWFuIG1ldGhvZDJDb250aW51ZSA9IGZhbHNlOwoKcHVibGljIHN0YXRpYyB2b2lkIG1ldGhvZDEoKSB7CiAgICBUaHJlYWQgdGhyZWFkID0gbmV3IFRocmVhZCgoKSAtPiBtZXRob2QyKCkpOwogICAgdGhyZWFkLnN0YXJ0KCk7CiAgICBpZih0cnVlKXsKICAgIAlmb3IoaW50IGkgPSAwOyBpIDwgMTAwMDAwMDA7IGkrKyk7IC8vIGRlbGF5IHRvIGFsbG93IG1ldGhvZDIgdG8gc3RhcnQKICAgIAlTeXN0ZW0ub3V0LnByaW50bG4oIkFsbG93aW5nIG1ldGhvZDIgdG8gY29udGludWUiKTsKICAgICAgICBtZXRob2QyQ29udGludWUgPSB0cnVlOwogICAgfQogICAgdGhyZWFkLmludGVycnVwdCgpOwp9CnB1YmxpYyBzdGF0aWMgdm9pZCBtZXRob2QyKCkgewogICAgLy8gLi4uCiAgICBTeXN0ZW0ub3V0LnByaW50bG4oIm1ldGhvZDIiKTsKICAgIHdoaWxlKCFtZXRob2QyQ29udGludWUpOwogICAgU3lzdGVtLm91dC5wcmludGxuKCJtZXRob2QyIGhhcyBiZWVuIGFsbG93ZWQgdG8gY29udGludWUiKTsKICAgIC8vIC4uLgp9Cn0=