模块 jdk.jdi

接口 MethodExitRequest

所有父级接口:
EventRequest , Mirror

public interface MethodExitRequest extends EventRequest
当方法在目标 VM 中返回时请求通知。当命中启用的 MethodExitRequest 时,包含 MethodExitEvent event set 将被放置在 EventQueue 上。现有 MethodExitRequests 的集合由 EventRequestManager 管理
自从:
1.3
参见:
  • 方法详情

    • addThreadFilter

      void addThreadFilter(ThreadReference  thread)
      将此请求生成的事件限制为给定线程中的事件。
      参数:
      thread - 要过滤的线程。
      抛出:
      InvalidRequestStateException - 如果此请求当前已启用或已被删除。过滤器只能添加到禁用的请求。
    • addClassFilter

      void addClassFilter(ReferenceType  refType)
      将此请求生成的事件限制为方法属于给定引用类型或其任何子类型的事件。将为引用类型中可以安全地转换为给定引用类型的任何位置生成一个事件。
      参数:
      refType - 要过滤的引用类型。
      抛出:
      InvalidRequestStateException - 如果此请求当前已启用或已被删除。过滤器只能添加到禁用的请求。
    • addClassFilter

      void addClassFilter(String  classPattern)
      将此请求生成的事件限制为那些其方法位于名称与受限正则表达式匹配的类中的事件。正则表达式仅限于以'*'开头或以'*'结尾的精确匹配和模式;例如,“*.Foo”或“java.*”。
      参数:
      classPattern - 要过滤的模式字符串。
      抛出:
      InvalidRequestStateException - 如果此请求当前已启用或已被删除。过滤器只能添加到禁用的请求。
    • addClassExclusionFilter

      void addClassExclusionFilter(String  classPattern)
      将此请求生成的事件限制为那些其方法位于其名称的类中的事件not匹配这个受限制的正则表达式。正则表达式仅限于以'*'开头或以'*'结尾的精确匹配和模式;例如,“*.Foo”或“java.*”。
      参数:
      classPattern - 要过滤的模式字符串。
      抛出:
      InvalidRequestStateException - 如果此请求当前已启用或已被删除。过滤器只能添加到禁用的请求。
    • addInstanceFilter

      void addInstanceFilter(ObjectReference  instance)
      将此请求生成的事件限制为当前正在执行的实例(“this”)是指定对象的事件。

      并非所有目标都支持此操作。使用 VirtualMachine.canUseInstanceFilters() 确定是否支持该操作。

      参数:
      instance - 必须是当前实例才能通过此过滤器的对象。
      抛出:
      UnsupportedOperationException - 如果目标虚拟机不支持此操作。
      InvalidRequestStateException - 如果此请求当前已启用或已被删除。过滤器只能添加到禁用的请求。
      自从:
      1.4