- すべてのスーパー・インタフェース:
Mirror
EventRequestの作成および削除を管理します。 このインタフェースの単一の実装者は、特定のVMに存在し、VirtualMachine.eventRequestManager()を介してアクセスされます - 導入されたバージョン:
- 1.3
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明有効および無効なaccessWatchpointRequestsの変更不可能なリストを返します。有効および無効なbreakpointRequestsの変更不可能なリストを返します。有効および無効なclassPrepareRequestsの変更不可能なリストを返します。有効および無効なclassUnloadRequestsの変更不可能なリストを返します。指定されたフィールドへのアクセスを監視する新しい無効なウォッチポイントを作成します。createBreakpointRequest(Location location) 新しい無効なBreakpointRequestを作成します。新しい無効なClassPrepareRequestを作成します。新しい無効なClassUnloadRequestを作成します。createExceptionRequest(ReferenceType refType, boolean notifyCaught, boolean notifyUncaught) 新しい無効なExceptionRequestを作成します。新しい無効なMethodEntryRequestを作成します。新しい無効なMethodExitRequestを作成します。指定されたフィールドへのアクセスを監視する新しい無効なウォッチポイントを作成します。新しい無効なMonitorContendedEnteredRequestを作成します。新しい無効なMonitorContendedEnterRequestを作成します。新しい無効なMonitorWaitedRequestを作成します。新しい無効なMonitorWaitRequestを作成します。createStepRequest(ThreadReference thread, int size, int depth) 新しい無効なStepRequestを作成します。新しい無効なThreadDeathRequestを作成します。新しい無効なThreadStartRequestを作成します。新しい無効なVMDeathRequestを作成します。voidこのEventRequestManagerが管理するすべてのブレークポイントを削除します。voiddeleteEventRequest(EventRequest eventRequest) 特定のeventRequestを削除します。voiddeleteEventRequests(List<? extends EventRequest> eventRequests) EventRequestのリストを削除します。有効および無効なexceptionRequestsの変更不可能なリストを返します。有効および無効なmethodEntryRequestsの変更不可能なリストを返します。有効および無効なmethodExitRequestsの変更不可能なリストを返します。有効および無効なmodificationWatchpointRequestsの変更不可能なリストを返します。有効なおよび無効なmonitorContendedEnteredRequestsの変更不可能なリストを返します。有効なおよび無効なmonitorContendedEnterRequestsの変更不可能なリストを返します。有効なおよび無効なmonitorWaitedRequestsの変更不可能なリストを返します。有効なおよび無効なmonitorWaitRequestsの変更不可能なリストを返します。有効および無効なstepRequestsの変更不可能なリストを返します。有効および無効なthreadDeathRequestsの変更不可能なリストを返します。有効および無効なthreadStartRequestsの変更不可能なリストを返します。有効および無効なvmDeathRequestsの変更不可能なリストを返します。インタフェース com.sun.jdi.Mirrorで宣言されたメソッド
toString, virtualMachine
-
メソッドの詳細
-
createClassPrepareRequest
ClassPrepareRequest createClassPrepareRequest()新しい無効なClassPrepareRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
ClassPrepareRequest
-
createClassUnloadRequest
ClassUnloadRequest createClassUnloadRequest()新しい無効なClassUnloadRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
ClassUnloadRequest
-
createThreadStartRequest
ThreadStartRequest createThreadStartRequest()新しい無効なThreadStartRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
ThreadStartRequest
-
createThreadDeathRequest
ThreadDeathRequest createThreadDeathRequest()新しい無効なThreadDeathRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
ThreadDeathRequest
-
createExceptionRequest
ExceptionRequest createExceptionRequest(ReferenceType refType, boolean notifyCaught, boolean notifyUncaught) 新しい無効なExceptionRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。例外イベントとして、特定の例外型およびそのサブクラスを選択できます。 キャッチされる例外、キャッチされない例外、または両方を選択できます。 ただし、例外がスローされる時点で、その例外が本当にキャッチされるかどうかを判断できるとは限りません。 詳細は、
ExceptionEvent.catchLocation()を参照してください。- パラメータ:
refType- null以外の場合、refTypeのインスタンスである例外が報告されるように指定する。 ノート: これには、サブ型のインスタンスも含まれる。 nullの場合、すべてのインスタンスが報告されるnotifyCaught- trueの場合、キャッチされた例外が報告される。notifyUncaught- trueの場合、キャッチされない例外が報告される。- 戻り値:
- 作成された
ExceptionRequest
-
createMethodEntryRequest
MethodEntryRequest createMethodEntryRequest()新しい無効なMethodEntryRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
MethodEntryRequest
-
createMethodExitRequest
MethodExitRequest createMethodExitRequest()新しい無効なMethodExitRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- 戻り値:
- 作成された
MethodExitRequest
-
createMonitorContendedEnterRequest
MonitorContendedEnterRequest createMonitorContendedEnterRequest()新しい無効なMonitorContendedEnterRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canRequestMonitorEvents()を使用します。- 戻り値:
- 作成された
MonitorContendedEnterRequest - 例外:
UnsupportedOperationException- ターゲットVMでこの操作がサポートされていない場合。- 導入されたバージョン:
- 1.6
-
createMonitorContendedEnteredRequest
MonitorContendedEnteredRequest createMonitorContendedEnteredRequest()新しい無効なMonitorContendedEnteredRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canRequestMonitorEvents()を使用します。- 戻り値:
- 作成された
MonitorContendedEnteredRequest - 例外:
UnsupportedOperationException- ターゲットVMでこの操作がサポートされていない場合。- 導入されたバージョン:
- 1.6
-
createMonitorWaitRequest
MonitorWaitRequest createMonitorWaitRequest()新しい無効なMonitorWaitRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canRequestMonitorEvents()を使用します。- 戻り値:
- 作成された
MonitorWaitRequest - 例外:
UnsupportedOperationException- ターゲットVMでこの操作がサポートされていない場合。- 導入されたバージョン:
- 1.6
-
createMonitorWaitedRequest
MonitorWaitedRequest createMonitorWaitedRequest()新しい無効なMonitorWaitedRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。 この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、VirtualMachine.canRequestMonitorEvents()を使用します。- 戻り値:
- 作成された
MonitorWaitedRequest - 例外:
UnsupportedOperationException- ターゲットVMでこの操作がサポートされていない場合。- 導入されたバージョン:
- 1.6
-
createStepRequest
StepRequest createStepRequest(ThreadReference thread, int size, int depth) 新しい無効なStepRequestを作成します。 このEventRequestManagerが管理するリストに新しいイベント要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。返される要求は、指定された
threadでのステップ実行だけを制御します。他のすべてのスレッドは、影響を受けません。StepRequest.STEP_MINのsize値は、コード・インデックスが変更されるたびにステップ・イベントを生成します。 これは、利用可能な最小のステップ・サイズを表し、多くの場合、命令レベルにマップします。StepRequest.STEP_LINEのsize値は、ソース行が変わるたびにステップ・イベントを生成します(行番号情報を入手できる場合)。行番号情報を利入手できない場合は、STEP_MINが代わりに実行されます。 たとえば、VirtualMachine.redefineClasses(java.util.Map<? extends com.sun.jdi.ReferenceType, byte[]>)操作によって廃止されたメソッドが実行されているとき、行番号情報は入手できません。StepRequest.STEP_INTOのdepth値は、呼び出されたすべてのメソッドでステップ・イベントを生成します。StepRequest.STEP_OVERのdepth値は、ステップ・イベントを現在のフレームまたは呼出し側のフレームに制限します。StepRequest.STEP_OUTのdepth値は、ステップ・イベントを呼出し側のフレームだけに制限します。 すべての深さ制限は、ステップが実行される直前の呼出しスタックに対する相対的なものです。保留中ステップ要求は、スレッドごとに1つだけ許可されます。
一般的なデバッガは、最初のステップの検出後にステップ実行を取り消そうとします。 したがって、次のlineメソッドは次のことを実行します:
EventRequestManager mgr = myVM.{@link VirtualMachine#eventRequestManager eventRequestManager}(); StepRequest request = mgr.createStepRequest(myThread, StepRequest.{@link StepRequest#STEP_LINE STEP_LINE}, StepRequest.{@link StepRequest#STEP_OVER STEP_OVER}); request.{@link EventRequest#addCountFilter addCountFilter}(1); // next step only request.enable(); myVM.{@link VirtualMachine#resume resume}();- パラメータ:
thread- ステップ実行を行うスレッドsize- ステップ・サイズdepth- ステップの深さ- 戻り値:
- 作成された
StepRequest - 例外:
DuplicateRequestException- 指定されたスレッドに保留中ステップ要求がすでに存在する場合。IllegalArgumentExceptionsize引数またはdepth引数に無効な値が含まれている場合。
-
createBreakpointRequest
BreakpointRequest createBreakpointRequest(Location location) 新しい無効なBreakpointRequestを作成します。 指定されたLocationには、有効な(負でない)コード・インデックスが必要です。 このEventRequestManagerが管理するリストに、新しいブレークポイントが追加されます。 1つの場所に複数のブレークポイントを設定可能です。 このイベント要求を有効にするには、EventRequest.enable()を使用します。- パラメータ:
location- 新しいブレークポイントの位置。- 戻り値:
- 作成された
BreakpointRequest - 例外:
NativeMethodException- 位置がネイティブ・メソッド内の場合。
-
createAccessWatchpointRequest
AccessWatchpointRequest createAccessWatchpointRequest(Field field) 指定されたフィールドへのアクセスを監視する新しい無効なウォッチポイントを作成します。 このEventRequestManagerが管理するリストに、新しいウォッチポイントが追加されます。 1つのフィールドに複数のウォッチポイントを設定可能です。 このイベント要求を有効にするには、EventRequest.enable()を使用します。この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、
VirtualMachine.canWatchFieldAccess()を使用します。- パラメータ:
field- 監視するフィールド- 戻り値:
- 作成されたウォッチポイント
- 例外:
UnsupportedOperationException- ターゲット仮想マシンがこの操作をサポートしていない場合。
-
createModificationWatchpointRequest
ModificationWatchpointRequest createModificationWatchpointRequest(Field field) 指定されたフィールドへのアクセスを監視する新しい無効なウォッチポイントを作成します。 このEventRequestManagerが管理するリストに、新しいウォッチポイントが追加されます。 1つのフィールドに複数のウォッチポイントを設定可能です。 このイベント要求を有効にするには、EventRequest.enable()を使用します。この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、
VirtualMachine.canWatchFieldModification()を使用します。- パラメータ:
field- 監視するフィールド- 戻り値:
- 作成されたウォッチポイント
- 例外:
UnsupportedOperationException- ターゲット仮想マシンがこの操作をサポートしていない場合。
-
createVMDeathRequest
VMDeathRequest createVMDeathRequest()新しい無効なVMDeathRequestを作成します。 このEventRequestManagerが管理するリストに、新しい要求が追加されます。 このイベント要求を有効にするには、EventRequest.enable()を使用します。この要求は(有効な場合)、ターゲットVMの終了時に
VMDeathEventが送信されるようにします。VMDeathRequestと中断ポリシー
SUSPEND_ALLを一緒に使用することで、VM停止前に着信するSUSPEND_NONEまたはSUSPEND_EVENT_THREADイベントを確実に処理できます。 すべてのイベント処理が、イベント・セットが読み込まれるスレッドと同じスレッドで行われている場合、VMDeathEventを含むEventSetが再開されるまでVMが中断されるので、必要なのは要求を有効にすることだけです。この操作は、ターゲット仮想マシンでサポートされていないことがあります。 この操作がサポートされているかどうかを確認するには、
VirtualMachine.canRequestVMDeathEvent()を使用します。- 戻り値:
- 作成された要求
- 例外:
UnsupportedOperationException- ターゲットVMでこの操作がサポートされていない場合。- 導入されたバージョン:
- 1.4
-
deleteEventRequest
void deleteEventRequest(EventRequest eventRequest) 特定のeventRequestを削除します。 指定されたeventRequestは無効化され、このEventRequestManagerが管理する要求リストから削除されます。 eventRequestが削除されると、EventRequest.setEnabled(boolean)などの操作は一切実行できなくなります。実行しようとすると、通常、InvalidRequestStateExceptionがスローされます。 なお、このメソッドは、その他のeventRequestには影響を与えません。このメソッドは基になるイベント要求リストを変更するため、要求アクセサを使って取得したリストから直接削除しようとすると、エラーが発生します。次に例を示します。
Iterator iter = requestManager.stepRequests().iterator(); while (iter.hasNext()) { requestManager.deleteEventRequest(iter.next()); }ConcurrentModificationExceptionが発生することがあります。 代わりに、deleteEventRequests(List)を使用するか、反復前にリストをコピーしてください。- パラメータ:
eventRequest- 削除するeventRequest
-
deleteEventRequests
void deleteEventRequests(List<? extends EventRequest> eventRequests) EventRequestのリストを削除します。- パラメータ:
eventRequests- 削除するeventRequestのリスト- 関連項目:
-
deleteAllBreakpoints
void deleteAllBreakpoints()このEventRequestManagerが管理するすべてのブレークポイントを削除します。- 関連項目:
-
stepRequests
List<StepRequest> stepRequests()有効および無効なstepRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
StepRequestオブジェクト。
-
classPrepareRequests
List<ClassPrepareRequest> classPrepareRequests()有効および無効なclassPrepareRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ClassPrepareRequestオブジェクト。
-
classUnloadRequests
List<ClassUnloadRequest> classUnloadRequests()有効および無効なclassUnloadRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ClassUnloadRequestオブジェクト。
-
threadStartRequests
List<ThreadStartRequest> threadStartRequests()有効および無効なthreadStartRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ThreadStartRequestオブジェクト。
-
threadDeathRequests
List<ThreadDeathRequest> threadDeathRequests()有効および無効なthreadDeathRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ThreadDeathRequestオブジェクト。
-
exceptionRequests
List<ExceptionRequest> exceptionRequests()有効および無効なexceptionRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ExceptionRequestオブジェクト。
-
breakpointRequests
List<BreakpointRequest> breakpointRequests()有効および無効なbreakpointRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
BreakpointRequestオブジェクトのリスト。
-
accessWatchpointRequests
List<AccessWatchpointRequest> accessWatchpointRequests()有効および無効なaccessWatchpointRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
AccessWatchpointRequestオブジェクト。
-
modificationWatchpointRequests
List<ModificationWatchpointRequest> modificationWatchpointRequests()有効および無効なmodificationWatchpointRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
ModificationWatchpointRequestオブジェクト。
-
methodEntryRequests
List<MethodEntryRequest> methodEntryRequests()有効および無効なmethodEntryRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MethodEntryRequestオブジェクトのリスト。
-
methodExitRequests
List<MethodExitRequest> methodExitRequests()有効および無効なmethodExitRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MethodExitRequestオブジェクトのリスト。
-
monitorContendedEnterRequests
List<MonitorContendedEnterRequest> monitorContendedEnterRequests()有効なおよび無効なmonitorContendedEnterRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MonitorContendedEnterRequestオブジェクトのリスト。 - 導入されたバージョン:
- 1.6
-
monitorContendedEnteredRequests
List<MonitorContendedEnteredRequest> monitorContendedEnteredRequests()有効なおよび無効なmonitorContendedEnteredRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MonitorContendedEnteredRequestオブジェクトのリスト。 - 導入されたバージョン:
- 1.6
-
monitorWaitRequests
List<MonitorWaitRequest> monitorWaitRequests()有効なおよび無効なmonitorWaitRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MonitorWaitRequestオブジェクトのリスト。 - 導入されたバージョン:
- 1.6
-
monitorWaitedRequests
List<MonitorWaitedRequest> monitorWaitedRequests()有効なおよび無効なmonitorWaitedRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。- 戻り値:
- すべての
MonitorWaitedRequestオブジェクトのリスト。 - 導入されたバージョン:
- 1.6
-
vmDeathRequests
List<VMDeathRequest> vmDeathRequests()有効および無効なvmDeathRequestsの変更不可能なリストを返します。 このリストはこれらの要求のライブ・ビューなので、要求が追加または削除されると変わります。 ノート: 非要請VMDeathEventに対応する要求はありません。- 戻り値:
- すべての
VMDeathRequestオブジェクトのリスト。 - 導入されたバージョン:
- 1.4
-