MonitorInfoCompositeData.java 文件源码

java
阅读 27 收藏 0 点赞 0 评论 0

项目:OpenJSharp 作者:
protected CompositeData getCompositeData() {
    // CONTENTS OF THIS ARRAY MUST BE SYNCHRONIZED WITH
    // monitorInfoItemNames!

    int len = monitorInfoItemNames.length;
    Object[] values = new Object[len];
    CompositeData li = LockInfoCompositeData.toCompositeData(lock);

    for (int i = 0; i < len; i++) {
        String item = monitorInfoItemNames[i];
        if (item.equals(LOCKED_STACK_FRAME)) {
            StackTraceElement ste = lock.getLockedStackFrame();
            values[i] = (ste != null ? StackTraceElementCompositeData.
                                           toCompositeData(ste)
                                     : null);
        } else if (item.equals(LOCKED_STACK_DEPTH)) {
            values[i] = new Integer(lock.getLockedStackDepth());
        } else {
            values[i] = li.get(item);
        }
    }

    try {
        return new CompositeDataSupport(monitorInfoCompositeType,
                                        monitorInfoItemNames,
                                        values);
    } catch (OpenDataException e) {
        // Should never reach here
        throw new AssertionError(e);
    }
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号