sys.dm_os_waiting_tasks (Transact-SQL)
Restituisce informazioni sulla coda di attesa relativa alle attività che sono in attesa di una risorsa.
Nome colonna |
Tipo di dati |
Descrizione |
---|---|---|
waiting_task_address |
varbinary(8) |
Indirizzo dell'attività in attesa. |
session_id |
smallint |
ID della sessione associata all'attività. |
exec_context_id |
int |
ID del contesto di esecuzione associato all'attività. |
wait_duration_ms |
int |
Tempo totale di attesa per questo tipo di attesa, in millisecondi. Il tempo comprende signal_wait_time. |
wait_type |
nvarchar(60) |
Nome del tipo di attesa. |
resource_address |
varbinary(8) |
Indirizzo della risorsa attesa dall'attività. |
blocking_task_address |
varbinary(8) |
Attività che mantiene bloccata la risorsa. |
blocking_session_id |
smallint |
ID della sessione che sta bloccando la richiesta. Se questa colonna è NULL, la richiesta non è bloccata oppure non sono disponibili o identificabili informazioni di sessione per la sessione da cui è bloccata. -2 = La risorsa di blocco appartiene a una transazione distribuita orfana. -3 = La risorsa di blocco appartiene a una transazione di recupero posticipata. -4 = Non è possibile determinare l'ID di sessione del proprietario del latch di blocco a causa di transizioni nello stato del latch interno. |
blocking_exec_context_id |
int |
ID del contesto di esecuzione dell'attività di blocco. |
resource_description |
nvarchar(1024) |
Descrizione della risorsa attualmente occupata. Per ulteriori informazioni, vedere l'elenco riportato di seguito. |
Colonna resource_description
La colonna resource_description ha i possibili valori riportati di seguito.
Proprietario di risorsa del pool di thread:
- threadpool id=scheduler<hex-address>
Proprietario di risorsa della query parallela:
- exchangeEvent id={Port|Pipe}<hex-address> WaitType=<exchange-wait-type> nodeId=<exchange-node-id>
Exchange-wait-type:
e_waitNone
e_waitPipeNewRow
e_waitPipeGetRow
e_waitSynchronizeConsumerOpen
e_waitPortOpen
e_waitPortClose
e_waitRange
Proprietario di risorsa di blocco:
<type-specific-description> id=lock<lock-hex-address> mode=<mode> associatedObjectId=<associated-obj-id>
I valori possibili per <type-specific-description> sono i seguenti:
Per DATABASE: databaselock subresource=<databaselock-subresource> dbid=<db-id>
Per FILE: filelock fileid=<file-id> subresource=<filelock-subresource> dbid=<db-id>
Per OBJECT: objectlock lockPartition=<lock-partition-id> objid=<obj-id> subresource=<objectlock-subresource> dbid=<db-id>
Per PAGE: pagelock fileid=<file-id> pageid=<page-id> dbid=<db-id> subresource=<pagelock-subresource>
Per Key: keylock hobtid=<hobt-id> dbid=<db-id>
Per EXTENT: extentlock fileid=<file-id> pageid=<page-id> dbid=<db-id>
Per RID: ridlock fileid=<file-id> pageid=<page-id> dbid=<db-id>
Per APPLICATION: applicationlock hash=<hash> databasePrincipalId=<role-id> dbid=<db-id>
Per METADATA: metadatalock subresource=<metadata-subresource> classid=<metadatalock-description> dbid=<db-id>
Per HOBT: hobtlock hobtid=<hobt-id> subresource=<hobt-subresource> dbid=<db-id>
Per ALLOCATION_UNIT: allocunitlock hobtid=<hobt-id> subresource=<alloc-unit-subresource> dbid=<db-id>
I valori possibili per <mode> sono i seguenti:
Sch-S, Sch-M, S, U, X, IS, IU, IX, SIU, SIX, UIX, BU, RangeS-S, RangeS-U, RangeI-N, RangeI-S, RangeI-U, RangeI-X, RangeX-, RangeX-U, RangeX-X
Proprietario di risorse esterne:
- External ExternalResource=<wait-type>
Proprietario di risorsa generica:
TransactionMutex TransactionInfo Workspace=<workspace-id>
Mutex
CLRTaskJoin
CLRMonitorEvent
CLRRWLockEvent
resourceWait
Proprietario di risorsa latch:
<db-id>:<file-id>:<page-in-file>
<GUID>
<latch-class> (<latch-address>)
Autorizzazioni
È richiesta l'autorizzazione VIEW SERVER STATE nel server.