/* 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
{
@Override
public void run( ) {
long millis
= System .
currentTimeMillis ( ) ; try {
boolean isi
= Thread .
currentThread ( ) .
isInterrupted ( ) ; e.printStackTrace ( ) ;
System .
out .
printf ( "Catch -> am interrupted %b\n " , isi
) ; Thread .
currentThread ( ) .
interrupt ( ) ; } finally {
System .
out .
printf ( "Finally1 -> I am interrupted %b in %d millis\n " ,
Thread .
currentThread ( ) .
isInterrupted ( ) ,
System .
currentTimeMillis ( ) - millis
) ; System .
out .
printf ( "Finally2 -> I am interrupted %b\n " ,
Thread .
currentThread ( ) .
isInterrupted ( ) ) ; }
}
} ;
t.setDaemon ( true ) ;
t.start ( ) ;
t.interrupt ( ) ;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBJbnRlcnJ1cHRlZEV4Y2VwdGlvbiB7CiAgICAgICAgCiAgICAgICAgUnVubmFibGUgdG9SdW4gPSBuZXcgUnVubmFibGUoKSB7CiAgICAgICAgICAgIEBPdmVycmlkZQogICAgICAgICAgICBwdWJsaWMgdm9pZCBydW4oKSB7CiAgICAgICAgICAgICAgICBsb25nIG1pbGxpcyA9IFN5c3RlbS5jdXJyZW50VGltZU1pbGxpcygpOwogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICBUaHJlYWQuc2xlZXAoMzAwMCk7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChJbnRlcnJ1cHRlZEV4Y2VwdGlvbiBlKSB7CiAgICAgICAgICAgICAgICAgICAgYm9vbGVhbiBpc2kgPSBUaHJlYWQuY3VycmVudFRocmVhZCgpLmlzSW50ZXJydXB0ZWQoKTsKICAgICAgICAgICAgICAgICAgICBlLnByaW50U3RhY2tUcmFjZSgpOwogICAgICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRmKCJDYXRjaCAtPiBhbSBpbnRlcnJ1cHRlZCAlYlxuIiwgaXNpKTsKICAgICAgICAgICAgICAgICAgICBUaHJlYWQuY3VycmVudFRocmVhZCgpLmludGVycnVwdCgpOwogICAgICAgICAgICAgICAgfSBmaW5hbGx5IHsKICAgICAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50ZigiRmluYWxseTEgLT4gSSBhbSBpbnRlcnJ1cHRlZCAlYiBpbiAlZCBtaWxsaXNcbiIsIFRocmVhZC5jdXJyZW50VGhyZWFkKCkuaXNJbnRlcnJ1cHRlZCgpLCBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKSAtIG1pbGxpcyk7CiAgICAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludGYoIkZpbmFsbHkyIC0+IEkgYW0gaW50ZXJydXB0ZWQgJWJcbiIsIFRocmVhZC5jdXJyZW50VGhyZWFkKCkuaXNJbnRlcnJ1cHRlZCgpKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICAKICAgICAgICB9OwogICAgICAgIAogICAgICAgIFRocmVhZCB0ID0gbmV3IFRocmVhZCh0b1J1biwgIlRlc3RUaHJlYWQiKTsKICAgICAgICAKICAgICAgICB0LnNldERhZW1vbih0cnVlKTsKICAgICAgICB0LnN0YXJ0KCk7CiAgICAgICAgCiAgICAgICAgVGhyZWFkLnNsZWVwKDIwMDApOwogICAgICAgIAogICAgICAgIHQuaW50ZXJydXB0KCk7CiAgICAgICAgCiAgICAgICAgVGhyZWFkLnNsZWVwKDIwMDApOwogICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiRG9uZSIpOwogICAgICAgIAogICAgfQp9