本文整理了Java中java.lang.management.ThreadMXBean.getThreadInfo()
方法的一些代码示例,展示了ThreadMXBean.getThreadInfo()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ThreadMXBean.getThreadInfo()
方法的具体详情如下:
包路径:java.lang.management.ThreadMXBean
类名称:ThreadMXBean
方法名:getThreadInfo
暂无
代码示例来源:origin: apache/hbase
public static ThreadInfo getThreadInfo(Thread t) {
long tid = t.getId();
return threadBean.getThreadInfo(tid, STACK_DEPTH);
}
代码示例来源:origin: awaitility/awaitility
public DeadlockException(long[] threads) {
super("Deadlocked threads detected");
ThreadMXBean bean = ManagementFactory.getThreadMXBean();
threadInfos = bean.getThreadInfo(threads, true, true);
}
代码示例来源:origin: scouter-project/scouter
public static void printStack(PrintWriter out, long tid) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(tid, 500);
StackTraceElement[] se = f.getStackTrace();
if (se != null) {
for (int i = 0; i < se.length; i++) {
if (se[i] != null) {
out.println("\t" + se[i]);
}
}
}
}
代码示例来源:origin: scouter-project/scouter
public static void printStack(PrintWriter out, long tid) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(tid, 500);
StackTraceElement[] se = f.getStackTrace();
if (se != null) {
for (int i = 0; i < se.length; i++) {
if (se[i] != null) {
out.println("\t" + se[i]);
}
}
}
}
代码示例来源:origin: LMAX-Exchange/disruptor
private String dumpThreadInfo()
{
final StringBuilder sb = new StringBuilder();
final ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
for (Thread t : threads)
{
ThreadInfo threadInfo = threadMXBean.getThreadInfo(t.getId());
sb.append("{");
sb.append("name=").append(t.getName()).append(",");
sb.append("id=").append(t.getId()).append(",");
sb.append("state=").append(threadInfo.getThreadState()).append(",");
sb.append("lockInfo=").append(threadInfo.getLockInfo());
sb.append("}");
}
return sb.toString();
}
}
代码示例来源:origin: stackoverflow.com
ThreadMXBean tmx = ManagementFactory.getThreadMXBean();
long[] ids = tmx.findDeadlockedThreads();
if (ids != null) {
ThreadInfo[] infos = tmx.getThreadInfo(ids, true, true);
System.out.println("The following threads are deadlocked:");
for (ThreadInfo ti : infos) {
System.out.println(ti);
}
}
代码示例来源:origin: stackoverflow.com
ThreadMXBean bean = ManagementFactory.getThreadMXBean();
long[] threadIds = bean.findDeadlockedThreads(); // Returns null if no threads are deadlocked.
if (threadIds != null) {
ThreadInfo[] infos = bean.getThreadInfo(threadIds);
for (ThreadInfo info : infos) {
StackTraceElement[] stack = info.getStackTrace();
// Log or store stack trace information.
}
}
代码示例来源:origin: apache/ignite
/**
* @param threadId Thread ID.
* @param sb Builder.
*/
public static void printStackTrace(long threadId, GridStringBuilder sb) {
ThreadMXBean mxBean = ManagementFactory.getThreadMXBean();
ThreadInfo threadInfo = mxBean.getThreadInfo(threadId, Integer.MAX_VALUE);
printThreadInfo(threadInfo, sb, Collections.<Long>emptySet());
}
代码示例来源:origin: aragozin/jvm-tools
public void collect() {
long timestamp = System.currentTimeMillis();
ThreadInfo[] dump = threading.getThreadInfo(threadSet, Integer.MAX_VALUE);
for(ThreadInfo ti: dump) {
Trace trace = newTrace(timestamp, ti);
if (trace != null) {
traces.add(trace);
}
}
}
代码示例来源:origin: apache/geode
/**
* Get an object suitable for querying the findDependencies method for a given thread.
*/
public static ThreadReference getThreadReference(String locality, Thread thread) {
ThreadMXBean bean = ManagementFactory.getThreadMXBean();
ThreadInfo info = bean.getThreadInfo(thread.getId(), Integer.MAX_VALUE);
return new LocalThread(locality, info);
}
代码示例来源:origin: scouter-project/scouter
public static String getThreadStack(long id) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(id, 500);
if (f == null)
return null;
return getStackTrace(f.getStackTrace());
}
代码示例来源:origin: scouter-project/scouter
public static String getThreadStack(long id) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(id, 500);
if (f == null)
return null;
return getStackTrace(f.getStackTrace());
}
代码示例来源:origin: scouter-project/scouter
public static String getThreadStack(long id) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(id, 500);
if (f == null)
return null;
return getStackTrace(f.getStackTrace());
}
代码示例来源:origin: scouter-project/scouter
public static String getThreadStack(long id) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(id, 500);
if (f == null)
return null;
return getStackTrace(f.getStackTrace());
}
代码示例来源:origin: scouter-project/scouter
public static String getThreadStack(long id) {
ThreadMXBean tmb = ManagementFactory.getThreadMXBean();
ThreadInfo f = tmb.getThreadInfo(id, 500);
if (f == null)
return null;
return getStackTrace(f.getStackTrace());
}
代码示例来源:origin: prestodb/presto
@GET
@Path("/v1/thread")
@Produces(MediaType.APPLICATION_JSON)
public List<Info> getThreadInfo()
{
ThreadMXBean mbean = ManagementFactory.getThreadMXBean();
ImmutableList.Builder<Info> builder = ImmutableList.builder();
for (ThreadInfo info : mbean.getThreadInfo(mbean.getAllThreadIds(), Integer.MAX_VALUE)) {
builder.add(new Info(
info.getThreadId(),
info.getThreadName(),
info.getThreadState().name(),
info.getLockOwnerId() == -1 ? null : info.getLockOwnerId(),
toStackTrace(info.getStackTrace())));
}
return Ordering.from(byName()).sortedCopy(builder.build());
}
代码示例来源:origin: apache/ignite
/**
* Dumps stack trace of the thread to the given log at warning level.
*
* @param t Thread to be dumped.
* @param log Logger.
*/
public static void dumpThread(Thread t, @Nullable IgniteLogger log) {
ThreadMXBean mxBean = ManagementFactory.getThreadMXBean();
GridStringBuilder sb = new GridStringBuilder();
printThreadInfo(mxBean.getThreadInfo(t.getId()), sb, Collections.emptySet());
warn(log, sb.toString());
}
代码示例来源:origin: Netflix/servo
private int countThreadsWithName(String prefix) {
final ThreadMXBean bean = ManagementFactory.getThreadMXBean();
final long[] ids = bean.getAllThreadIds();
final ThreadInfo[] infos = bean.getThreadInfo(ids);
int count = 0;
for (ThreadInfo info : infos) {
if (info != null && info.getThreadName().startsWith(prefix)) {
++count;
}
}
return count;
}
代码示例来源:origin: real-logic/aeron
public static String threadDump()
{
final StringBuilder sb = new StringBuilder();
final ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
for (final ThreadInfo info : threadMXBean.getThreadInfo(threadMXBean.getAllThreadIds(), Integer.MAX_VALUE))
{
sb.append('"').append(info.getThreadName()).append("\": ").append(info.getThreadState());
for (final StackTraceElement stackTraceElement : info.getStackTrace())
{
sb.append("\n at ").append(stackTraceElement.toString());
}
sb.append("\n\n");
}
return sb.toString();
}
}
代码示例来源:origin: apache/incubator-druid
@Nullable
private Exception getDeadlockedThreadsException()
{
final ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
final long[] deadlockedThreadIds = threadMXBean.findDeadlockedThreads();
if (deadlockedThreadIds == null) {
return null;
}
Exception deadlockException = new Exception("Deadlocked threads:");
for (long deadlockedThreadId : deadlockedThreadIds) {
ThreadInfo threadInfo = threadMXBean.getThreadInfo(deadlockedThreadId);
Exception threadException = new Exception(threadInfo.getThreadName() + " at " + threadInfo.getLockName());
threadException.setStackTrace(threadInfo.getStackTrace());
deadlockException.addSuppressed(threadException);
}
return deadlockException;
}
内容来源于网络,如有侵权,请联系作者删除!