Punti di interruzione

Il motore del debugger può creare e monitorare i punti di interruzione nella destinazione.

Esistono due tipi di punti di interruzione che il motore può inserire in una destinazione: punti di interruzione software e punti di interruzione del processore.

  • I punti di interruzione software vengono inseriti nel codice di destinazione modificando l'istruzione del processore nella posizione del punto di interruzione. Il motore del debugger tiene traccia di tali punti di interruzione; sono invisibili ai client che leggono e scrivono memoria in tale posizione. Un punto di interruzione software viene attivato quando la destinazione esegue l'istruzione modificata.

  • I punti di interruzione del processore vengono inseriti nel processore di destinazione dal motore del debugger. Un punto di interruzione del processore può essere attivato da azioni diverse, ad esempio eseguendo un'istruzione nella posizione (ad esempio punti di interruzione software) o leggendo o scrivendo memoria nella posizione del punto di interruzione. Il supporto per i punti di interruzione del processore dipende dal processore nel computer di destinazione.

L'indirizzo di un punto di interruzione può essere specificato da un indirizzo esplicito, da un'espressione che restituisce un indirizzo o da un'espressione che potrebbe valutare un indirizzo in un momento futuro. Nell'ultimo caso, ogni volta che un modulo viene caricato o scaricato nella destinazione, il motore tenterà di rivalutare l'espressione e inserire il punto di interruzione se può determinare l'indirizzo; in questo modo è possibile impostare i punti di interruzione nei moduli prima del caricamento.

Un numero di parametri può essere associato a un punto di interruzione per controllare il suo comportamento:

  • Un punto di interruzione può essere associato a un determinato thread nella destinazione e verrà attivato solo da tale thread.

  • Un punto di interruzione può avere comandi debugger associati a esso; questi comandi verranno eseguiti automaticamente quando viene attivato il punto di interruzione.

  • Un punto di interruzione può essere contrassegnato come inattivo fino a quando la destinazione non lo ha passato un numero specificato di volte.

  • Un punto di interruzione può essere rimosso automaticamente la prima volta che viene attivato.

Informazioni aggiuntive

Per informazioni dettagliate sull'uso dei punti di interruzione, vedere Uso di punti di interruzione.