I''m sure I read somewhere that it was a deliberate choice not to make it, to stop people using the very common pattern of creating the object in the try() - which isn't much use for a lock.
Greg -- Sent from my iPhone > On 24 Jun 2016, at 00:45, Remko Popma <remko.po...@gmail.com> wrote: > > Good idea! > Maybe propose this for Java 9? > Looks very reasonable to me. > > Sent from my iPhone > >> On 2016/06/24, at 8:32, Gary Gregory <garydgreg...@gmail.com> wrote: >> >> I wonder if anyone knows why Lock is not AutoCloseable. >> >> This: >> >> public static boolean hasManager(final String name) { >> LOCK.lock(); >> try { >> return MAP.containsKey(name); >> } finally { >> LOCK.unlock(); >> } >> } >> >> >> Seems lame in comparison to: >> >> public static boolean hasManager(final String name) { >> try (LOCK.lock()) { >> return MAP.containsKey(name); >> } >> } >> >> Which, due to syntax really would be: >> >> public static boolean hasManager(final String name) { >> try (Object o = LOCK.lock()) { >> return MAP.containsKey(name); >> } >> } >> >> Just wonderin'... >> >> Gary >> >> -- >> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org >> Java Persistence with Hibernate, Second Edition >> JUnit in Action, Second Edition >> Spring Batch in Action >> Blog: http://garygregory.wordpress.com >> Home: http://garygregory.com/ >> Tweet! http://twitter.com/GaryGregory