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


Java Stopwatch.elapsedMillis方法代码示例

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


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

示例1: run

import com.google.common.base.Stopwatch; //导入方法依赖的package包/类
@Override
public void run() {
  Stopwatch sw = new Stopwatch();
  Map<String, GcTimes> gcTimesBeforeSleep = getGcTimes();
  while (shouldRun) {
    sw.reset().start();
    try {
      Thread.sleep(SLEEP_INTERVAL_MS);
    } catch (InterruptedException ie) {
      return;
    }
    long extraSleepTime = sw.elapsedMillis() - SLEEP_INTERVAL_MS;
    Map<String, GcTimes> gcTimesAfterSleep = getGcTimes();

    if (extraSleepTime > warnThresholdMs) {
      LOG.warn(formatMessage(extraSleepTime, gcTimesAfterSleep, gcTimesBeforeSleep));
    } else if (extraSleepTime > infoThresholdMs) {
      LOG.info(formatMessage(extraSleepTime, gcTimesAfterSleep, gcTimesBeforeSleep));
    }

    gcTimesBeforeSleep = gcTimesAfterSleep;
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:24,代码来源:JvmPauseMonitor.java

示例2: waitMetaRegionLocation

import com.google.common.base.Stopwatch; //导入方法依赖的package包/类
/**
 * Waits indefinitely for availability of <code>hbase:meta</code>.  Used during
 * cluster startup.  Does not verify meta, just that something has been
 * set up in zk.
 * @see #waitMetaRegionLocation(org.apache.hadoop.hbase.zookeeper.ZooKeeperWatcher, long)
 * @throws InterruptedException if interrupted while waiting
 */
public void waitMetaRegionLocation(ZooKeeperWatcher zkw) throws InterruptedException {
  Stopwatch stopwatch = new Stopwatch().start();
  while (!stopped) {
    try {
      if (waitMetaRegionLocation(zkw, 100) != null) break;
      long sleepTime = stopwatch.elapsedMillis();
      // +1 in case sleepTime=0
      if ((sleepTime + 1) % 10000 == 0) {
        LOG.warn("Have been waiting for meta to be assigned for " + sleepTime + "ms");
      }
    } catch (NotAllMetaRegionsOnlineException e) {
      if (LOG.isTraceEnabled()) {
        LOG.trace("hbase:meta still not available, sleeping and retrying." +
          " Reason: " + e.getMessage());
      }
    }
  }
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:26,代码来源:MetaTableLocator.java

示例3: blockUntilAvailable

import com.google.common.base.Stopwatch; //导入方法依赖的package包/类
/**
 * Wait until the meta region is available and is not in transition.
 * @param zkw
 * @param replicaId
 * @param timeout
 * @return ServerName or null if we timed out.
 * @throws InterruptedException
 */
public ServerName blockUntilAvailable(final ZooKeeperWatcher zkw, int replicaId,
    final long timeout)
throws InterruptedException {
  if (timeout < 0) throw new IllegalArgumentException();
  if (zkw == null) throw new IllegalArgumentException();
  Stopwatch sw = new Stopwatch().start();
  ServerName sn = null;
  try {
    while (true) {
      sn = getMetaRegionLocation(zkw, replicaId);
      if (sn != null || sw.elapsedMillis()
          > timeout - HConstants.SOCKET_RETRY_WAIT_MS) {
        break;
      }
      Thread.sleep(HConstants.SOCKET_RETRY_WAIT_MS);
    }
  } finally {
    sw.stop();
  }
  return sn;
}
 
开发者ID:fengchen8086,项目名称:ditb,代码行数:30,代码来源:MetaTableLocator.java


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