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


Java PerfInstrumentation类代码示例

本文整理汇总了Java中sun.management.counter.perf.PerfInstrumentation的典型用法代码示例。如果您正苦于以下问题:Java PerfInstrumentation类的具体用法?Java PerfInstrumentation怎么用?Java PerfInstrumentation使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


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

示例1: importFrom

import sun.management.counter.perf.PerfInstrumentation; //导入依赖的package包/类
/**
 * Imports the connector address from the instrument buffer
 * of the specified Java virtual machine.
 *
 * @param vmid an identifier that uniquely identifies a local Java virtual
 * machine, or <code>0</code> to indicate the current Java virtual machine.
 *
 * @return the value of the connector address, or <code>null</code> if the
 * target VM has not exported a connector address.
 *
 * @throws IOException An I/O error occurred while trying to acquire the
 * instrumentation buffer.
 */
public static String importFrom(int vmid) throws IOException {
    Perf perf = Perf.getPerf();
    ByteBuffer bb;
    try {
        bb = perf.attach(vmid, "r");
    } catch (IllegalArgumentException iae) {
        throw new IOException(iae.getMessage());
    }
    List<Counter> counters =
            new PerfInstrumentation(bb).findByPattern(CONNECTOR_ADDRESS_COUNTER);
    Iterator<Counter> i = counters.iterator();
    if (i.hasNext()) {
        Counter c = i.next();
        return (String) c.getValue();
    } else {
        return null;
    }
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:32,代码来源:ConnectorAddressLink.java

示例2: importRemoteFrom

import sun.management.counter.perf.PerfInstrumentation; //导入依赖的package包/类
/**
 * Imports the remote connector address and associated
 * configuration properties from the instrument buffer
 * of the specified Java virtual machine.
 *
 * @param vmid an identifier that uniquely identifies a local Java virtual
 * machine, or <code>0</code> to indicate the current Java virtual machine.
 *
 * @return a map containing the remote connector's properties, or an empty
 * map if the target VM has not exported the remote connector's properties.
 *
 * @throws IOException An I/O error occurred while trying to acquire the
 * instrumentation buffer.
 */
public static Map<String, String> importRemoteFrom(int vmid) throws IOException {
    Perf perf = Perf.getPerf();
    ByteBuffer bb;
    try {
        bb = perf.attach(vmid, "r");
    } catch (IllegalArgumentException iae) {
        throw new IOException(iae.getMessage());
    }
    List<Counter> counters = new PerfInstrumentation(bb).getAllCounters();
    Map<String, String> properties = new HashMap<>();
    for (Counter c : counters) {
        String name =  c.getName();
        if (name.startsWith(REMOTE_CONNECTOR_COUNTER_PREFIX) &&
                !name.equals(CONNECTOR_ADDRESS_COUNTER)) {
            properties.put(name, c.getValue().toString());
        }
    }
    return properties;
}
 
开发者ID:SunburstApps,项目名称:OpenJSharp,代码行数:34,代码来源:ConnectorAddressLink.java

示例3: importFrom

import sun.management.counter.perf.PerfInstrumentation; //导入依赖的package包/类
/**
 * Imports the connector address from the instrument buffer
 * of the specified Java virtual machine.
 *
 * @param vmid an identifier that uniquely identifies a local Java virtual
 * machine, or <code>0</code> to indicate the current Java virtual machine.
 *
 * @return the value of the connector address, or <code>null</code> if the
 * target VM has not exported a connector address.
 *
 * @throws IOException An I/O error occurred while trying to acquire the
 * instrumentation buffer.
 */
public static String importFrom(int vmid) throws IOException {
    Perf perf = Perf.getPerf();
    ByteBuffer bb;
    try {
        bb = perf.attach(vmid, "r");
    } catch (IllegalArgumentException iae) {
        throw new IOException(iae.getMessage());
    }
    List counters =
            new PerfInstrumentation(bb).findByPattern(CONNECTOR_ADDRESS_COUNTER);
    Iterator i = counters.iterator();
    if (i.hasNext()) {
        Counter c = (Counter) i.next();
        return (String) c.getValue();
    } else {
        return null;
    }
}
 
开发者ID:openjdk,项目名称:jdk7-jdk,代码行数:32,代码来源:ConnectorAddressLink.java

示例4: importRemoteFrom

import sun.management.counter.perf.PerfInstrumentation; //导入依赖的package包/类
/**
 * Imports the remote connector address and associated
 * configuration properties from the instrument buffer
 * of the specified Java virtual machine.
 *
 * @param vmid an identifier that uniquely identifies a local Java virtual
 * machine, or <code>0</code> to indicate the current Java virtual machine.
 *
 * @return a map containing the remote connector's properties, or an empty
 * map if the target VM has not exported the remote connector's properties.
 *
 * @throws IOException An I/O error occurred while trying to acquire the
 * instrumentation buffer.
 */
public static Map<String, String> importRemoteFrom(int vmid) throws IOException {
    Perf perf = Perf.getPerf();
    ByteBuffer bb;
    try {
        bb = perf.attach(vmid, "r");
    } catch (IllegalArgumentException iae) {
        throw new IOException(iae.getMessage());
    }
    List counters = new PerfInstrumentation(bb).getAllCounters();
    Map<String, String> properties = new HashMap<String, String>();
    for (Object c : counters) {
        String name = ((Counter) c).getName();
        if (name.startsWith(REMOTE_CONNECTOR_COUNTER_PREFIX) &&
                !name.equals(CONNECTOR_ADDRESS_COUNTER)) {
            properties.put(name, ((Counter) c).getValue().toString());
        }
    }
    return properties;
}
 
开发者ID:openjdk,项目名称:jdk7-jdk,代码行数:34,代码来源:ConnectorAddressLink.java


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