class SynchTest {
public static void main
(String[] args
) { new Thread(new Task
()).
start(); new Thread(new Task
()).
start(); new Thread(new Task
()).
start(); }
long start;
Task() {
this.
start = System.
currentTimeMillis(); }
@Override
public void run() {
synchronized (STATIC_MONITOR) {
try {
}
}
}
}
}
Y2xhc3MgU3luY2hUZXN0IHsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHsKICAgICAgICBuZXcgVGhyZWFkKG5ldyBUYXNrKCkpLnN0YXJ0KCk7CiAgICAgICAgbmV3IFRocmVhZChuZXcgVGFzaygpKS5zdGFydCgpOwogICAgICAgIG5ldyBUaHJlYWQobmV3IFRhc2soKSkuc3RhcnQoKTsKICAgIH0KIAogICAgc3RhdGljIGNsYXNzIFRhc2sgaW1wbGVtZW50cyBSdW5uYWJsZSB7CiAgICAgICAgbG9uZyBzdGFydDsKIAogICAgICAgIFRhc2soKSB7CiAgICAgICAgICAgIHRoaXMuc3RhcnQgPSBTeXN0ZW0uY3VycmVudFRpbWVNaWxsaXMoKTsKICAgICAgICB9CiAgICAgICAgCiAgICAgICAgc3RhdGljIGZpbmFsIE9iamVjdCBTVEFUSUNfTU9OSVRPUiA9IG5ldyBPYmplY3QoKTsKIAogICAgICAgIEBPdmVycmlkZQogICAgICAgIHB1YmxpYyB2b2lkIHJ1bigpIHsKICAgICAgICAgICAgc3luY2hyb25pemVkIChTVEFUSUNfTU9OSVRPUikgewogICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICBUaHJlYWQuc2xlZXAoMTAwMCk7CiAgICAgICAgICAgICAgICB9IGNhdGNoIChJbnRlcnJ1cHRlZEV4Y2VwdGlvbiBpZ25vcmVkKSB7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oU3lzdGVtLmN1cnJlbnRUaW1lTWlsbGlzKCkgLSBzdGFydCk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9Cn0=