< prev index next >

jdk/test/java/lang/management/ThreadMXBean/Locks.java

Print this page
rev 16982 : imported patch 8180399

*** 27,47 **** * @summary Basic unit test of ThreadInfo.getLockName() * and ThreadInfo.getLockOwnerName() * @author Mandy Chung * @author Jaroslav Bachorik * ! * @library /lib/testlibrary * * @build jdk.testlibrary.* * @run main/othervm Locks */ import java.lang.management.*; import java.util.Arrays; import java.util.Optional; import java.util.concurrent.Phaser; import java.util.function.Predicate; ! import jdk.testlibrary.LockFreeLogManager; public class Locks { private static final Object OBJA = new Object(); private static final Object OBJB = new Object(); --- 27,48 ---- * @summary Basic unit test of ThreadInfo.getLockName() * and ThreadInfo.getLockOwnerName() * @author Mandy Chung * @author Jaroslav Bachorik * ! * @library /lib/testlibrary /test/lib * * @build jdk.testlibrary.* * @run main/othervm Locks */ import java.lang.management.*; import java.util.Arrays; + import java.util.Objects; import java.util.Optional; import java.util.concurrent.Phaser; import java.util.function.Predicate; ! import jdk.test.lib.log.LockFreeLogManager; public class Locks { private static final Object OBJA = new Object(); private static final Object OBJB = new Object();
*** 58,73 **** private static void assertNoLock(Thread t) { if (t == null) { return; } ! Optional<ThreadInfo> result = Arrays.asList( ! TM.getThreadInfo(TM.getAllThreadIds(), true, true)). ! stream(). ! filter(tInfo -> (tInfo != null && tInfo.getLockOwnerName() != null) ! ? tInfo.getLockOwnerName().equals(t.getName()) : false). ! findAny(); if (result.isPresent()) { throw new RuntimeException("Thread " + t.getName() + " is not " + "supposed to be hold any lock. Currently owning lock : " + result.get().getLockName()); } --- 59,74 ---- private static void assertNoLock(Thread t) { if (t == null) { return; } ! String name = t.getName(); ! Optional<ThreadInfo> result = Arrays.stream( ! TM.getThreadInfo(TM.getAllThreadIds(), true, true)) ! .filter(Objects::nonNull) ! .filter(i -> name.equals(i.getLockOwnerName())) ! .findAny(); if (result.isPresent()) { throw new RuntimeException("Thread " + t.getName() + " is not " + "supposed to be hold any lock. Currently owning lock : " + result.get().getLockName()); }
< prev index next >