-
- All Superinterfaces:
-
Mirror
public interface EventQueueextends Mirror
目标VM的传入调试器事件的管理器。 事件始终分组在EventSet
中 。 可以在此处读取调试器后端生成的EventSet。 有一个EventQueue实例分配给特定的VirtualMachine
。某些事件导致目标VM暂停 - 事件请求(
com.sun.jdi.request
)的suspend policy
为SUSPEND_ALL
或SUSPEND_EVENT_THREAD
,有时为VMStartEvent
。 如果未恢复这些挂起,则目标VM将挂起。 因此,这是一件好事政策remove()
从事件队列中的每个EventSet这样,直到含有的EventSet这样VMDisconnectEvent
被读取。 除非以另一种方式处理resume
,否则每个EventSet都应调用EventSet.resume()
。- 从以下版本开始:
- 1.3
- 另请参见:
-
EventSet
,VirtualMachine
-
-
方法详细信息
-
remove
EventSet remove() throws InterruptedException
永远等待下一个可用的活动。- 结果
- 接下来的
EventSet
。 - 异常
-
InterruptedException
- 如果有任何线程中断了该线程。 -
VMDisconnectedException
- 如果与目标VM的连接不再可用。 请注意,这将始终以VMDisconnectEvent
开头 。
-
remove
EventSet remove(long timeout) throws InterruptedException
等待下一个可用事件的指定时间。- 参数
-
timeout
- 等待下一个事件的时间(以毫秒为单位) - 结果
- 下一个
EventSet
,如果有超时则返回 null。 - 异常
-
InterruptedException
- 如果有任何线程中断了此线程。 -
VMDisconnectedException
- 如果与目标VM的连接不再可用。 请注意,这将始终以VMDisconnectEvent
开头 。 -
IllegalArgumentException
- 如果超时参数包含非法值。
-
-