Module jdk.jdi

Interface EventSet

所有超级接口:
Collection<Event>, Iterable<Event>, Mirror, Set<Event>

public interface EventSet extends Mirror, Set<Event>
在目标VirtualMachine中,可能会同时创建多个Event对象。例如,对于给定的Location,可能会有多个BreakpointRequest,或者您可能会单步执行到与BreakpointRequest相同的位置。这些Event对象一起作为EventSet传递。为了统一起见,始终使用EventSet来传递Event对象。EventSet由EventQueue传递。EventSets是不可修改的。

与事件集的发出相关联的是目标VM中可能发生的暂停。这些暂停对应于暂停策略。为了确保匹配的恢复发生,建议在可能的情况下,使用EventSet.resume()完成事件集的处理。

在EventSet中分组的事件受到以下限制:

  • 始终是单例集合:
  • 仅与其他VMDeathEvents一起:
  • 仅与同一线程的其他ThreadStartEvents一起:
  • 仅与同一线程的其他ThreadDeathEvents一起:
  • 仅与同一类的其他ClassPrepareEvents一起:
  • 仅与同一类的其他ClassUnloadEvents一起:
  • 仅与同一字段访问的其他AccessWatchpointEvents一起:
  • 仅与同一字段修改的其他ModificationWatchpointEvents一起:
  • 仅与同一异常发生的其他ExceptionEvents一起:
  • 仅与同一方法退出的其他MethodExitEvents一起:
  • 仅与同一监视器对象的其他Monitor contended enter事件一起:
    • Monitor Contended Enter Event
  • 仅与同一监视器对象的其他Monitor contended entered事件一起:
    • Monitor Contended Entered Event
  • 仅与同一监视器对象的其他Monitor wait事件一起:
    • Monitor Wait Event
  • 仅与同一监视器对象的其他Monitor waited事件一起:
    • Monitor Waited Event
  • 仅与此组的其他成员一起,在相同的位置和相同的线程中:
自 JDK 版本:
1.3
参见: