当前位置: 首页>>代码示例>>Java>>正文


Java ThreadInfo.isInNative方法代码示例

本文整理汇总了Java中java.lang.management.ThreadInfo.isInNative方法的典型用法代码示例。如果您正苦于以下问题:Java ThreadInfo.isInNative方法的具体用法?Java ThreadInfo.isInNative怎么用?Java ThreadInfo.isInNative使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在java.lang.management.ThreadInfo的用法示例。


在下文中一共展示了ThreadInfo.isInNative方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: printThread

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
private static void printThread(ThreadInfo ti, PrintWriter out) {
  out.print("\"" + ti.getThreadName() + "\"" + " Id="
      + ti.getThreadId() + " in " + ti.getThreadState());
  if (ti.getLockName() != null) {
    out.print(" on lock=" + ti.getLockName());
  }
  if (ti.isSuspended()) {
    out.print(" (suspended)");
  }
  if (ti.isInNative()) {
    out.print(" (running in native)");
  }
  out.println();
  if (ti.getLockOwnerName() != null) {
    out.println(INDENT + " owned by " + ti.getLockOwnerName() + " Id="
        + ti.getLockOwnerId());
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:TimedOutTestsListener.java

示例2: printThread

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
private static StringBuilder printThread(ThreadInfo ti, StringBuilder sb) {
    sb.append("\"" + ti.getThreadName() + "\"" + " Id="
            + ti.getThreadId() + " in " + ti.getThreadState());
    if (ti.getLockName() != null) {
        sb.append(" waiting on lock=" + ti.getLockName());
    }
    if (ti.isSuspended()) {
        sb.append(" (suspended)");
    }
    if (ti.isInNative()) {
        sb.append(" (running in native)");
    }
    sb.append("\n");
    if (ti.getLockOwnerName() != null) {
        sb.append("\t owned by " + ti.getLockOwnerName() + " Id="
                + ti.getLockOwnerId()).append("\n");
    }
    return sb;
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:20,代码来源:NbTestCase.java

示例3: printThread

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
private void printThread(ThreadInfo ti, PrintStream out) {
   StringBuilder sb = new StringBuilder("\"" + ti.getThreadName() + "\"" + // NOI18N
                                        " Id=" + ti.getThreadId() +       // NOI18N
                                        " in " + ti.getThreadState());    // NOI18N
   if (ti.getLockName() != null) {
       sb.append(" on lock=").append(ti.getLockName()); // NOI18N
   }
   if (ti.isSuspended()) {
       sb.append(" (suspended)"); // NOI18N
   }
   if (ti.isInNative()) {
       sb.append(" (running in native)"); // NOI18N
   }
   out.println(sb.toString());
   if (ti.getLockOwnerName() != null) {
        out.println(INDENT + " owned by " + ti.getLockOwnerName() + // NOI18N
                           " Id=" + ti.getLockOwnerId());           // NOI18N
   }
}
 
开发者ID:apache,项目名称:incubator-netbeans,代码行数:20,代码来源:Detector.java

示例4: getThreadDumpHeader

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
/**
 * Formats the thread dump header for one thread.
 *
 * @param ti the ThreadInfo describing the thread
 * @return the formatted thread dump header
 */
private static String getThreadDumpHeader(ThreadInfo ti) {
    StringBuilder sb = new StringBuilder("\"" + ti.getThreadName() + "\"");
    sb.append(" Id=" + ti.getThreadId());
    sb.append(" cpu=" + threadMXBean.getThreadCpuTime(ti.getThreadId()) +
              " ns");
    sb.append(" usr=" + threadMXBean.getThreadUserTime(ti.getThreadId()) +
              " ns");
    sb.append(" blocked " + ti.getBlockedCount() + " for " +
              ti.getBlockedTime() + " ms");
    sb.append(" waited " + ti.getWaitedCount() + " for " +
              ti.getWaitedTime() + " ms");

    if (ti.isSuspended()) {
        sb.append(" (suspended)");
    }
    if (ti.isInNative()) {
        sb.append(" (running in native)");
    }
    sb.append(CRLF);
    sb.append(INDENT3 + "java.lang.Thread.State: " + ti.getThreadState());
    sb.append(CRLF);
    return sb.toString();
}
 
开发者ID:liaokailin,项目名称:tomcat7,代码行数:30,代码来源:Diagnostics.java

示例5: getThreadInfo

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
private String getThreadInfo(ThreadInfo ti) {
	String message = "\"" + ti.getThreadName() + "\" [ID=" + ti.getThreadId() + "]";
	message += " is " + ti.getThreadState();
	
	if (ti.isSuspended()) {
		message += " (suspended)";
	}
	
	if (ti.isInNative()) {
		message += " (running in native)";
	}

	message += ":\n";
	
	if (ti.getLockName() != null) {
		message += INDENT + "waiting to lock " + ti.getLockName() + "\n";
	}
	
	if (ti.getLockOwnerName() != null) {
		message += INDENT + "owned by \"" + ti.getLockOwnerName() + "\" [ID=" + ti.getLockOwnerId() + "]\n";
	}
	
	return message;
}
 
开发者ID:convertigo,项目名称:convertigo-engine,代码行数:25,代码来源:ThreadManager.java

示例6: printThread

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
private void printThread(ThreadInfo ti) {
   StringBuilder sb = new StringBuilder("\"" + ti.getThreadName() + "\"" +
                                        " Id=" + ti.getThreadId() +
                                        " in " + ti.getThreadState());
   if (ti.getLockName() != null) {
       sb.append(" on lock=" + ti.getLockName());
   }
   if (ti.isSuspended()) {
       sb.append(" (suspended)");
   }
   if (ti.isInNative()) {
       sb.append(" (running in native)");
   }
   System.out.println(sb.toString());
   if (ti.getLockOwnerName() != null) {
        System.out.println(INDENT + " owned by " + ti.getLockOwnerName() +
                           " Id=" + ti.getLockOwnerId());
   }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:20,代码来源:ThreadMonitor.java

示例7: getState

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
public static Byte[] getState(ThreadInfo info) {
    byte[] bitmap = new byte[] {(byte)0x00, (byte)0x00};
    try {
        final Thread.State state = info.getThreadState();
        final boolean inNative  = info.isInNative();
        final boolean suspended = info.isSuspended();
        log.debug("getJvmThreadInstState",
                  "[State=" + state +
                  ",isInNative=" + inNative +
                  ",isSuspended=" + suspended + "]");
        setState(bitmap,state);
        if (inNative)  setNative(bitmap);
        if (suspended) setSuspended(bitmap);
        checkOther(bitmap);
    } catch (RuntimeException r) {
        bitmap[0]=(byte)0x00;
        bitmap[1]=Byte1.other;
        log.trace("getJvmThreadInstState",
                  "Unexpected exception: " + r);
        log.debug("getJvmThreadInstState",r);
    }
    Byte[] result = { new Byte(bitmap[0]), new Byte(bitmap[1]) };
    return result;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:25,代码来源:JvmThreadInstanceEntryImpl.java

示例8: next

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
@Override
public Object next() {
  ThreadInfo currentThread = threadInfoIterator.next();
  final NodeEndpoint endpoint = dbContext.getEndpoint();
  final long id = currentThread.getThreadId();
  return new ThreadSummary(endpoint.getAddress(),
          endpoint.getFabricPort(),
          currentThread.getThreadName(),
          currentThread.getThreadId(),
          currentThread.isInNative(),
          currentThread.isSuspended(),
          currentThread.getThreadState().name(),
          stats.getCpuTrailingAverage(id, 1),
          stats.getUserTrailingAverage(id, 1),
          NUMBER_OF_CORES,
          getStackTrace(currentThread));
}
 
开发者ID:dremio,项目名称:dremio-oss,代码行数:18,代码来源:ThreadsIterator.java

示例9: getThreadDumpHeader

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
/**
 * Formats the thread dump header for one thread.
 *
 * @param ti
 *            the ThreadInfo describing the thread
 * @return the formatted thread dump header
 */
private static String getThreadDumpHeader(ThreadInfo ti) {
	StringBuilder sb = new StringBuilder("\"" + ti.getThreadName() + "\"");
	sb.append(" Id=" + ti.getThreadId());
	sb.append(" cpu=" + threadMXBean.getThreadCpuTime(ti.getThreadId()) + " ns");
	sb.append(" usr=" + threadMXBean.getThreadUserTime(ti.getThreadId()) + " ns");
	sb.append(" blocked " + ti.getBlockedCount() + " for " + ti.getBlockedTime() + " ms");
	sb.append(" waited " + ti.getWaitedCount() + " for " + ti.getWaitedTime() + " ms");

	if (ti.isSuspended()) {
		sb.append(" (suspended)");
	}
	if (ti.isInNative()) {
		sb.append(" (running in native)");
	}
	sb.append(CRLF);
	sb.append(INDENT3 + "java.lang.Thread.State: " + ti.getThreadState());
	sb.append(CRLF);
	return sb.toString();
}
 
开发者ID:how2j,项目名称:lazycat,代码行数:27,代码来源:Diagnostics.java

示例10: waitUntilInNative

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
/**
 * Waits until {@link TestThread} is in native.
 */
public void waitUntilInNative() {
    ThreadMXBean tmx = ManagementFactory.getThreadMXBean();
    while (isAlive()) {
        ThreadInfo ti = tmx.getThreadInfo(getId());
        if (ti.isInNative()) {
            return;
        }
        try {
            Thread.sleep(1);
        } catch (InterruptedException e) {
        }
    }
}
 
开发者ID:lambdalab-mirror,项目名称:jdk8u-jdk,代码行数:17,代码来源:TestThread.java

示例11: waitUntilInNative

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
/**
 * Waits until {@link Thread} is in native.
 */
public static void waitUntilInNative(Thread thread) throws InterruptedException {
    ThreadMXBean tmx = ManagementFactory.getThreadMXBean();
    while (thread.isAlive()) {
        ThreadInfo ti = tmx.getThreadInfo(thread.getId());
        if (ti.isInNative()) {
            return;
        }
        Thread.sleep(1);
    }
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:14,代码来源:ThreadMXBeanTool.java

示例12: asString

import java.lang.management.ThreadInfo; //导入方法依赖的package包/类
static String asString(ThreadInfo inf) {
    StringBuilder sb = new StringBuilder();
    sb.append("\"").append(inf.getThreadName()).append("\"")
            .append(inf.isDaemon() ? " daemon" : "")
            .append(" prio=").append(inf.getPriority())
            .append(" Id=").append(inf.getThreadId())
            .append(" ").append(inf.getThreadState());
    if (inf.getLockName() != null) {
        sb.append(" on ").append(inf.getLockName());
    }
    if (inf.getLockOwnerName() != null) {
        sb.append(" owned by \"").append(inf.getLockOwnerName())
                .append("\" Id=").append(inf.getLockOwnerId());
    }
    if (inf.isSuspended()) {
        sb.append(" (suspended)");
    }
    if (inf.isInNative()) {
        sb.append(" (in native)");
    }
    sb.append('\n');
    int i = 0;
    StackTraceElement[] stackTrace = inf.getStackTrace();
    for (; i < stackTrace.length; i++) {
        StackTraceElement ste = stackTrace[i];
        sb.append("\tat ").append(ste.toString());
        sb.append('\n');
        if (i == 0 && inf.getLockInfo() != null) {
            Thread.State ts = inf.getThreadState();
            switch (ts) {
                case BLOCKED:
                    sb.append("\t-  blocked on ").append(inf.getLockInfo());
                    sb.append('\n');
                    break;
                case WAITING:
                    sb.append("\t-  waiting on ").append(inf.getLockInfo());
                    sb.append('\n');
                    break;
                case TIMED_WAITING:
                    sb.append("\t-  waiting on ").append(inf.getLockInfo());
                    sb.append('\n');
                    break;
                default:
            }
        }

        for (MonitorInfo mi : inf.getLockedMonitors()) {
            if (mi.getLockedStackDepth() == i) {
                sb.append("\t-  locked ").append(mi);
                sb.append('\n');
            }
        }
    }
    if (i < stackTrace.length) {
       sb.append("\t...");
       sb.append('\n');
    }

    LockInfo[] locks = inf.getLockedSynchronizers();
    if (locks.length > 0) {
       sb.append("\n\tNumber of locked synchronizers = ").append(locks.length);
       sb.append('\n');
       for (LockInfo li : locks) {
           sb.append("\t- ").append(li);
           sb.append('\n');
       }
    }
    sb.append('\n');
    return sb.toString();
}
 
开发者ID:AdoptOpenJDK,项目名称:openjdk-jdk10,代码行数:71,代码来源:TestConfigurationLock.java


注:本文中的java.lang.management.ThreadInfo.isInNative方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。