java.lang.management.ThreadMXBean.isThreadCpuTimeSupported()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(7.7k)|赞(0)|评价(0)|浏览(139)

本文整理了Java中java.lang.management.ThreadMXBean.isThreadCpuTimeSupported()方法的一些代码示例,展示了ThreadMXBean.isThreadCpuTimeSupported()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ThreadMXBean.isThreadCpuTimeSupported()方法的具体详情如下:
包路径:java.lang.management.ThreadMXBean
类名称:ThreadMXBean
方法名:isThreadCpuTimeSupported

ThreadMXBean.isThreadCpuTimeSupported介绍

暂无

代码示例

代码示例来源:origin: org.scala-lang/scala-compiler

@Override
public boolean isThreadCpuTimeSupported() {
  return underlying.isThreadCpuTimeSupported();
}

代码示例来源:origin: apache/incubator-druid

public static boolean isThreadCpuTimeEnabled()
{
 return THREAD_MX_BEAN.isThreadCpuTimeSupported() && THREAD_MX_BEAN.isThreadCpuTimeEnabled();
}

代码示例来源:origin: pentaho/pentaho-kettle

/**
 * @return CPU time in nanoseconds.
 */
public static long getCpuTime( long id ) {
 setThreadMXBean();
 if ( !tbean.isThreadCpuTimeSupported() ) {
  return 0L;
 }
 return tbean.getThreadCpuTime( id );
}

代码示例来源:origin: wildfly/wildfly

protected static String enable(int type, boolean flag) {
  ThreadMXBean bean=ManagementFactory.getThreadMXBean();
  boolean supported=false;
  if(type == 1) { // cpu
    supported=bean.isThreadCpuTimeSupported();
    if(supported)
      bean.setThreadCpuTimeEnabled(flag);
  }
  else if(type == 2) {
    supported=bean.isThreadContentionMonitoringSupported();
    if(supported)
      bean.setThreadContentionMonitoringEnabled(flag);
  }
  String tmp=type == 1? "CPU" : "contention";
  return String.format("%s monitoring supported: %b, %s monitoring enabled: %b", tmp, supported, tmp, supported && flag);
}

代码示例来源:origin: neo4j/neo4j

@Override
  public long cpuTimeNanos( long threadId )
  {
    if ( !threadMXBean.isThreadCpuTimeSupported() )
    {
      return -1;
    }
    if ( !threadMXBean.isThreadCpuTimeEnabled() )
    {
      threadMXBean.setThreadCpuTimeEnabled( true );
    }
    return threadMXBean.getThreadCpuTime( threadId );
  }
};

代码示例来源:origin: linkedin/parseq

private void grabCPUTimesBeforeTest() {
 final boolean threadCPUTimeSupported = threadBean.isThreadCpuTimeSupported();
 LOG.info("Thread CPU time measurment supported: " + threadCPUTimeSupported);
 if (threadCPUTimeSupported) {
  threadBean.setThreadCpuTimeEnabled(true);
 }
 //grab CPU times before test
 for (Thread thread: _parseqThreads) {
  long threadId = thread.getId();
  long cpuTime = threadBean.getThreadCpuTime(threadId);
  if (cpuTime > -1) {
   threadCPU.put(threadId, cpuTime);
  }
  long cpuUserTime = threadBean.getThreadUserTime(threadId);
  if (cpuUserTime > -1) {
   threadUserCPU.put(threadId, cpuUserTime);
  }
 }
}

代码示例来源:origin: apache/incubator-druid

/**
 * Returns the CPU time used by a thread, if possible.
 *
 * @param thr The thread to query.
 *
 * @return The CPU time used by {@code thr}, or 0 if it cannot be determined.
 */
private long cpuTime(Thread thr)
{
 ThreadMXBean mxBean = ManagementFactory.getThreadMXBean();
 if (mxBean.isThreadCpuTimeSupported()) {
  try {
   return mxBean.getThreadCpuTime(thr.getId());
  }
  catch (UnsupportedOperationException ignore) {
   // fall through
  }
 }
 return 0;
}

代码示例来源:origin: javamelody/javamelody

final boolean cpuTimeEnabled = threadBean.isThreadCpuTimeSupported()
    && threadBean.isThreadCpuTimeEnabled();
final long[] deadlockedThreads = getDeadlockedThreads(threadBean);

代码示例来源:origin: gocd/gocd

public void enableIfDiagnosticsModeIsEnabled() {
  if (systemEnvironment.get(SystemEnvironment.GO_DIAGNOSTICS_MODE)) {
    ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
    if (threadMXBean.isThreadContentionMonitoringSupported()) {
      threadMXBean.setThreadContentionMonitoringEnabled(true);
    }
    if (threadMXBean.isThreadCpuTimeSupported()) {
      threadMXBean.setThreadCpuTimeEnabled(true);
    }
    if (isThreadAllocatedMemorySupported(threadMXBean)) {
      setThreadAllocatedMemoryEnabled(threadMXBean);
    }
  }
}

代码示例来源:origin: apache/hive

private void updateThreadMetrics(MetricsRecordBuilder rb) {
 if (threadMXBean.isThreadCpuTimeSupported() && threadMXBean.isThreadCpuTimeEnabled()) {
  final long[] ids = threadMXBean.getAllThreadIds();
  final ThreadInfo[] infos = threadMXBean.getThreadInfo(ids);
  for (int i = 0; i < ids.length; i++) {
   ThreadInfo threadInfo = infos[i];
   if (threadInfo == null) {
    continue;
   }
   String threadName = threadInfo.getThreadName();
   long threadId = ids[i];
   Integer id = executorNames.get(threadName);
   if (id != null) {
    executorThreadCpuTime[id].set(threadMXBean.getThreadCpuTime(threadId));
    executorThreadUserTime[id].set(threadMXBean.getThreadUserTime(threadId));
   }
  }
  for (int i=0; i<numExecutors; i++) {
   rb.addGauge(cpuMetricsInfoMap.get(i), executorThreadCpuTime[i].value());
   rb.addGauge(userMetricsInfoMap.get(i), executorThreadUserTime[i].value());
  }
 }
}

代码示例来源:origin: mpusher/mpush

public static void jstack(OutputStream stream) throws Exception {
  PrintStream out = new PrintStream(stream);
  boolean cpuTimeEnabled = threadMXBean.isThreadCpuTimeSupported() && threadMXBean.isThreadCpuTimeEnabled();
  Map<Thread, StackTraceElement[]> map = Thread.getAllStackTraces();

代码示例来源:origin: patric-r/jvmtop

"TOTALCPU", "BLOCKEDBY");
if (vmInfo_.getThreadMXBean().isThreadCpuTimeSupported())

代码示例来源:origin: apache/geode

s.setLong(thread_waitedTimeId, ti.getWaitedTime());
if (threadBean.isThreadCpuTimeSupported() && threadBean.isThreadCpuTimeEnabled()) {
 s.setLong(thread_cpuTimeId, threadBean.getThreadCpuTime(id));
 s.setLong(thread_userTimeId, threadBean.getThreadUserTime(id));

代码示例来源:origin: org.elasticsearch/elasticsearch

private String innerDetect() throws Exception {
  ThreadMXBean threadBean = ManagementFactory.getThreadMXBean();
  if (threadBean.isThreadCpuTimeSupported() == false) {
    throw new ElasticsearchException("thread CPU time is not supported on this JDK");

代码示例来源:origin: glowroot/glowroot

private static Availability getThreadCpuTimeAvailability() {
  ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean();
  if (!threadMXBean.isThreadCpuTimeSupported()) {
    return Availability.newBuilder()
        .setAvailable(false)
        .setReason("java.lang.management.ThreadMXBean"
            + ".isThreadCpuTimeSupported() returned false")
        .build();
  }
  if (!threadMXBean.isThreadCpuTimeEnabled()) {
    return Availability.newBuilder()
        .setAvailable(false)
        .setReason("java.lang.management.ThreadMXBean"
            + ".isThreadCpuTimeEnabled() returned false")
        .build();
  }
  return Availability.newBuilder().setAvailable(true).build();
}

代码示例来源:origin: com.carrotsearch/junit-benchmarks

@Override
  long time()
  {
    if (mxBean.isThreadCpuTimeSupported())
    {
      return mxBean.getCurrentThreadCpuTime() / FACTOR;
    } else
    {
      throw new RuntimeException("ThreadCpuTime is not supported. Impossible to use Clock.CPU_TIME");
    }
  }
},

代码示例来源:origin: com.carrotsearch/junit-benchmarks

@Override
  long time()
  {
    if (mxBean.isThreadCpuTimeSupported())
    {
      return mxBean.getCurrentThreadUserTime() / FACTOR;
    } else
    {
      throw new RuntimeException("ThreadCpuTime is not supported. Impossible to use Clock.USER_TIME");
    }
  }
};

代码示例来源:origin: stackoverflow.com

ThreadMXBean bean=ManagementFactory.getThreadMXBean();
long id=Thread.currentThread().getId();
long start,end;
if(!bean.isThreadCpuTimeSupported()){System.exit(0);}
start=bean.getThreadCpuTime(id);

//Call some methods , process some objects

end=bean.getThreadCpuTime(id)-start;

代码示例来源:origin: inspectIT/inspectIT

@BeforeMethod
public void initTestClass() {
  Map<String, Object> settings = new HashMap<String, Object>();
  when(threadMXBean.isThreadCpuTimeEnabled()).thenReturn(true);
  when(threadMXBean.isThreadCpuTimeSupported()).thenReturn(true);
  timerHook = new TimerHook(timer, platformManager, propertyAccessor, settings, threadMXBean);
}

代码示例来源:origin: inspectIT/inspectIT

@BeforeMethod
public void initTestClass() {
  Map<String, String> settings = new HashMap<String, String>();
  settings.put("sessioncapture", "false");
  when(threadMXBean.isThreadCpuTimeEnabled()).thenReturn(true);
  when(threadMXBean.isThreadCpuTimeSupported()).thenReturn(true);
  Map<String, Object> map = new HashMap<String, Object>();
  MapUtils.putAll(map, new String[][] { { "sessioncapture", "true" }, { "attributescapture", "true" }, { "parameterscapture", "true" } });
  httpHook = new HttpHook(timer, platformManager, map, threadMXBean);
}

相关文章

微信公众号

最新文章

更多