首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从一个代理通过SetBreakpoint在JVMTI中设置的断点对连接到JVM的远程调试器是否是可见的?

从一个代理通过SetBreakpoint在JVMTI中设置的断点对连接到JVM的远程调试器是否是可见的?
EN

Stack Overflow用户
提问于 2019-02-09 23:28:32
回答 1查看 216关注 0票数 3

让我们假设远程调试器连接到本地JVM。如果某个JVMTI代理(调试器代理除外)通过SetBreakpoint设置一个断点,远程调试器会看到它吗?远程调试器是否能够跨过或移除此断点?

可见,我的意思是,断点命中事件将被发送到远程调试器,因此调试器将能够以同样的方式运行,就好像他是设置断点的那个人一样。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-02 20:39:32

设置断点和接收断点事件需要can_generate_breakpoint_events功能。在HotSpot JVM中,此功能是独占的(或http://hg.openjdk.java.net/jdk/jdk/file/f3fd73c3a077/src/hotspot/share/prims/jvmtiManageCapabilities.cpp#l146),也就是说,can_generate_breakpoint_events一次只能被一个JVM环境所拥有。

换句话说,所描述的情况永远不会发生:当JDWP代理存在时,没有其他JVM TI代理可以设置断点或订阅断点事件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54611862

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档