Esporta (0) Stampa
Espandi tutto
Espandi Riduci a icona
Il presente articolo è stato tradotto manualmente. Passare il puntatore sulle frasi nell'articolo per visualizzare il testo originale. Ulteriori informazioni.
Traduzione
Originale

sys.dm_os_tasks (Transact-SQL)

Restituisce una riga per ogni attività in corso nell'istanza di SQL Server.

Si applica a: SQL Server (da SQL Server 2008 a versione corrente).

Nome colonna

Tipo di dato

Descrizione

task_address

varbinary(8)

Indirizzo di memoria dell'oggetto.

task_state

nvarchar(60)

Stato dell'attività. I possibili valori sono i seguenti:

PENDING: in attesa di un thread di lavoro.

RUNNABLE: eseguibile, ma in attesa di ricevere un quantum.

RUNNING: esecuzione in corso nell'utilità di pianificazione.

SUSPENDED: è disponibile un thread di lavoro, ma è in attesa di un evento.

DONE: completato.

SPINLOOP: bloccato in uno spinlock.

context_switches_count

int

Numero di cambi di contesto dell'utilità di pianificazione completati dall'attività.

pending_io_count

int

Numero di I/O fisici eseguiti dall'attività.

pending_io_byte_count

bigint

Numero totale di byte degli I/O eseguiti dall'attività.

pending_io_byte_average

int

Numero medio di byte degli I/O eseguiti dall'attività.

scheduler_id

int

ID dell'utilità di pianificazione padre. Si tratta di un handle per le informazioni dell'utilità di pianificazione per l'attività. Per ulteriori informazioni, vedere sys.dm_os_schedulers (Transact-SQL).

session_id

smallint

ID della sessione associata all'attività.

exec_context_id

int

ID del contesto di esecuzione associato all'attività.

request_id

int

ID della richiesta dell'attività. Per ulteriori informazioni, vedere sys.dm_exec_requests (Transact-SQL).

worker_address

varbinary(8)

Indirizzo di memoria del thread di lavoro che sta eseguendo l'attività.

NULL = Per poter essere eseguita, l'attività è in attesa di un thread di lavoro oppure l'esecuzione dell'attività è stata completata.

Per ulteriori informazioni, vedere sys.dm_os_workers (Transact-SQL).

host_address

varbinary(8)

Indirizzo di memoria dell'host.

0 = Per creare l'attività non è stato utilizzato alcun host. Ciò semplifica l'identificazione dell'host utilizzato per creare l'attività.

Per ulteriori informazioni, vedere sys.dm_os_hosts (Transact-SQL).

parent_task_address

varbinary(8)

Indirizzo di memoria dell'attività padre dell'oggetto.

È richiesta l'autorizzazione VIEW SERVER STATE nel server.

A.Monitoraggio di richieste in parallelo

In caso di richieste eseguite in parallelo, vengono visualizzate più righe per la stessa combinazione di (<session_id>, <request_id>). Utilizzare la query seguente per individuare Configurare l'opzione di configurazione del server max degree of parallelism per tutte le richieste attive.

Nota Nota

request_id è univoco all'interno di ogni sessione.

SELECT
    task_address,
    task_state,
    context_switches_count,
    pending_io_count,
    pending_io_byte_count,
    pending_io_byte_average,
    scheduler_id,
    session_id,
    exec_context_id,
    request_id,
    worker_address,
    host_address
  FROM sys.dm_os_tasks
  ORDER BY session_id, request_id;

B.Associazione di ID di sessione con thread di Windows

È possibile utilizzare la query seguente per associare un valore di ID di sessione a un ID di thread di Windows. È possibile monitorare le prestazioni del thread utilizzando Performance Monitor di Windows. La query seguente non restituisce informazioni per le sessioni sospese.

SELECT STasks.session_id, SThreads.os_thread_id
  FROM sys.dm_os_tasks AS STasks
  INNER JOIN sys.dm_os_threads AS SThreads
    ON STasks.worker_address = SThreads.worker_address
  WHERE STasks.session_id IS NOT NULL
  ORDER BY STasks.session_id;
GO

Aggiunte alla community

AGGIUNGI
Microsoft sta conducendo un sondaggio in linea per comprendere l'opinione degli utenti in merito al sito Web di MSDN. Se si sceglie di partecipare, quando si lascia il sito Web di MSDN verrà visualizzato il sondaggio in linea.

Si desidera partecipare?
Mostra:
© 2015 Microsoft