Condividi tramite


Procedura: eseguire il debug su un cluster ad alte prestazioni

Aggiornamento: novembre 2007

Le informazioni contenute in questo argomento sono valide per:

Edition

Visual Basic

C#

C++

Web Developer

Express

Argomento non applicabile Argomento non applicabile Argomento non applicabile Argomento non applicabile

Standard

Argomento non applicabile

Argomento non applicabile

Argomento non applicabile

Argomento non applicabile

Pro e Team

Argomento non applicabile

Argomento applicabile

Argomento applicabile

Argomento non applicabile

Legenda tabella:

Argomento applicabile

Applicabile

Argomento non applicabile

Non applicabile

Argomento valido ma comando nascosto per impostazione predefinita

Comando o comandi nascosti per impostazione predefinita.

Il debug di un programma con multiprocessing in un cluster ad alte prestazioni è simile al debug di un programma normale in un computer remoto. È tuttavia necessario fare alcune considerazioni specifiche. Per i requisiti relativi all'impostazione del debug di cluster remoti, vedere Procedura: eseguire il debug di un'applicazione cluster remota. Per i requisiti generali relativi all'impostazione del debug remoto, vedere Installazione del debug remoto.

Quando si esegue il debug in un cluster ad alte prestazioni, è possibile utilizzare tutte le tecniche e le finestre di debug di Visual Studio disponibili per il debug remoto. Poiché, tuttavia, il debug viene eseguito in remoto, la finestra della console esterna non è disponibile.

Le finestre Thread e Processi sono particolarmente utili per il debug di applicazioni parallele. Per suggerimenti relativi all'utilizzo di queste finestre, vedere Procedura: utilizzare la finestra Processi e Procedura: utilizzare la finestra Thread.

Nelle procedure riportate di seguito sono illustrate alcune tecniche che risultano particolarmente utili per il debug in un cluster ad alte prestazioni.

Quando si esegue il debug di un'applicazione parallela, è possibile impostare un punto di interruzione in un thread, in un processo o in un computer specifico. A tale scopo, è possibile creare un punto di interruzione normale e quindi aggiungere un apposito filtro.

Per aprire la finestra di dialogo Filtro punto di interruzione

  1. Fare clic con il pulsante destro del mouse su un glifo del punto di interruzione in una finestra di origine, nella finestra Disassembly, nella finestra Stack di chiamate o nella finestra Punti di interruzione.

  2. Scegliere Filtro dal menu di scelta rapida. Questa opzione può essere presente nel menu di livello superiore o nel sottomenu sotto Punti di interruzione.

Per impostare un punto di interruzione in un computer specifico

  1. Ottenere il nome del computer nella finestra Processi.

  2. Selezionare un punto di interruzione e aprire la finestra di dialogo Filtro punto di interruzione come descritto nella procedura precedente.

  3. Nella finestra di dialogo Filtro punto di interruzione digitare:

    MachineName =nomecomputer

    Per creare un filtro più complesso, è possibile combinare clausole utilizzando &, l'operatore AND, ||, l'operatore OR, !, l'operatore NOT e le parentesi.

  4. Scegliere OK.

Per impostare un punto di interruzione in un processo specifico

  1. Ottenere il nome o il numero di ID del processo nella finestra Processi.

  2. Selezionare un punto di interruzione e aprire la finestra di dialogo Filtro punto di interruzione come descritto nella prima procedura.

  3. Nella finestra di dialogo Filtro punto di interruzione digitare:

    ProcessName = nomeprocesso

    oppure

    ProcessID =ProcessID =numeroIDprocesso

    Per creare un filtro più complesso, è possibile combinare clausole utilizzando &, l'operatore AND, ||, l'operatore OR, !, l'operatore NOT e le parentesi.

  4. Scegliere OK.

Per impostare un punto di interruzione in un thread specifico

  1. Ottenere il nome o il numero ID del thread nella finestra Thread.

  2. Selezionare un punto di interruzione e aprire la finestra di dialogo Filtro punto di interruzione come descritto nella prima procedura.

  3. Nella finestra di dialogo Filtro punto di interruzione digitare:

    ThreadName =ThreadName =nomethread

    oppure

    ThreadID =ThreadID =numeroIDthread

    Per creare un filtro più complesso, è possibile combinare clausole utilizzando &, l'operatore AND, ||, l'operatore OR, !, l'operatore NOT e le parentesi.

  4. Scegliere OK.

Esempio

Nell'esempio seguente viene illustrato come creare un filtro per un punto di interruzione in un computer denominato marvin e un thread denominato fourier1.

(MachineName = marvin) & (ThreadName = fourier1)

Vedere anche

Attività

Procedura: eseguire il debug di un'applicazione cluster remota

Procedura: utilizzare la finestra Processi

Procedura: utilizzare la finestra Thread

Procedura: specificare un filtro del punto di interruzione

Concetti

Thread e processi

Altre risorse

Debug di applicazioni multithreading

Installazione del debug remoto