- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
因此,我向自己介绍了 btrace,但目前我没有从中得到任何输出。使用此脚本:
包 com.sun.btrace.samples;
import com.sun.btrace.annotations.*;
import static com.sun.btrace.BTraceUtils.*;
@BTrace
public class AllLines {
@OnMethod(
clazz="/.*/",
location=@Location(value=Kind.LINE, line=-1)
)
public static void online(@ProbeClassName String pcn, @ProbeMethodName String pmn, int line) {
print(Strings.strcat(pcn, "."));
print(Strings.strcat(pmn, ":"));
println(line);
}
}
这直接来自样本目录,只是更改了“clazz="/.*/",",出于绝望以打印出一些东西。运气不好。
我指向 btrace 的 pid 是我开发的一个简单的 java 程序,它只是为了测试目的而在循环中调用某个方法。我正在通过 Eclipse 运行它。
有什么我可能遗漏的想法吗?谢谢!
更新:打开 Debug模式发现它卡在“调试:检查端口可用性:2020”。有什么想法吗?
最佳答案
您尝试跟踪的类是否使用 javac -g
或至少 javac -g:lines
编译?您需要这样做才能访问字节码中的行号信息。
另外 - 为所有类的所有方法启用行跟踪是一个非常坏主意(tm)。您将导致大量的类重新转换和重新加载,如果运气不好,您可能会关闭您的应用程序(由于内存问题)。
关于java - Btrace 不返回任何东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31590487/
使用 btrace,我想测试我的函数使用了多少堆,所以我写: 上面的代码是我使用的 btrace 示例。 操作我的函数两次,我得到了两个不同的结果: 如图所示,堆成本不同:一个是另一个的两倍。 最佳答
我知道 BTrace 可以跟踪 java 程序的任何目标方法。但是,我想知道它是否可以跟踪代码中直接定义的方法。就像按钮监听器方法一样,因为我想跟踪这个事件。 button1.addActionLis
BTrace 文档中提到 BTrace 在空闲时几乎没有开销。这是否意味着 BTrace 仅在满足某些探测并正在处理时才有开销? 此外,当处理 Probe 时,它会占用一些 CPU 来进行处理。但
因此,我向自己介绍了 btrace,但目前我没有从中得到任何输出。使用此脚本: 包 com.sun.btrace.samples; import com.sun.btrace.annotations.
在下面的代码中: import static com.sun.btrace.BTraceUtils.*; import com.sun.btrace.annotations.*; import org
有谁知道如何运行多个btrace同时编写脚本?我不想用它们预编译并启动我的程序。我想使用多个 btrace 脚本插入正在运行的进程。 最佳答案 安装了 BTrace 插件 (http://kenai.
我正在尝试使用 BTrace 来查找某个类型何时在我的程序中首次实例化(Eclipse 调试器无法找到它),因为我看到了一些奇怪的行为(Javolution XMLStreamWriterImpl 以
我关注 btrace脚本。我想记录特定类中函数的进入和退出。 .. package com.sun.btrace.samples; import com.sun.btrace.BTraceUtils;
BTrace 是什么? BTrace 是一个动态安全的 Java 追踪工具,它通过向运行中的 Java 程序植入字节码文件,来对运行中的 Java 程序热更新,方便的获取程序运行时的数据信息,并且,
我正在使用 BTrace 1.2 并遵循 BTrace website 中的用户指南。我在使用命令运行程序时使用 BTrace 没有任何问题: btrace AllMethods.class 但是当
我想在堆栈跟踪的每一行前加上一个字符串。 有没有办法用 btrace 中的其他内容替换字符串中的所有模式? 最佳答案 这在 BTrace 中确实不支持。 您有两种可能性 - 您可以打开 不安全 模式及
VisualVM 支持执行不安全的 BTrace 脚本 ( https://kenai.com/projects/btrace/pages/UserGuide )。是否可以使用不安全的 BTrace
我只找到了一种可以提供所有 Activity 线程数量的方法: BTraceUtils.threadCount() 但是如何获取 ID 呢?我想知道调用方法 (@OnMethod) 时哪些线程处于 A
我正在使用 btrace 分析应用程序并面临限制。我尝试获取当前 java.lang.Thread 的名称。通常你可以调用 getName() 但它在 btrace 脚本中是被禁止的(任何调用异常 B
当我运行这个简单的 Java8 程序时 package test; public class TraceInt { public static void main(String args[]) thr
查看方法“methodExit”。参数“@Duration long time”中保存的时间单位是什么? package com.sun.btrace.samples; import com.sun.
我是一名优秀的程序员,十分优秀!