sys.dm_os_waiting_tasks (Transact-SQL)
Retorna informações sobre a fila de espera de tarefas que estão esperando algum recurso.
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
waiting_task_address |
varbinary(8) |
Endereço da tarefa de espera. |
session_id |
smallint |
ID da sessão associada à tarefa. |
exec_context_id |
int |
ID do contexto de execução associado à tarefa. |
wait_duration_ms |
int |
Tempo de espera total para esse tipo, em milissegundos. Essa hora é inclusiva de signal_wait_time. |
wait_type |
nvarchar(60) |
Nome do tipo de espera. |
resource_address |
varbinary(8) |
Endereço do recurso pelo qual a tarefa está esperando. |
blocking_task_address |
varbinary(8) |
Tarefa que está mantendo esse recurso atualmente |
blocking_session_id |
smallint |
ID da sessão que está bloqueando a solicitação. Se esta coluna for NULL, a solicitação não estará bloqueada ou as informações da sessão de bloqueio não estarão disponíveis (ou não poderão ser identificadas). -2 = O recurso de bloqueio pertence a uma transação distribuída órfã. -3 = O recurso de bloqueio pertence a uma transação de recuperação adiada. -4 = A ID da sessão do proprietário da trava de bloqueio não pôde ser determinada devido a transições internas de estado da trava. |
blocking_exec_context_id |
int |
ID do contexto de execução da tarefa de bloqueio. |
resource_description |
nvarchar(1024) |
Descrição do recurso que está sendo consumido. Para obter mais informações, consulte a lista abaixo. |
Coluna resource_description
A coluna resource_description tem os valores possíveis a seguir.
Proprietário de recurso do pool de thread:
- threadpool id=scheduler<hex-address>
Proprietário de recurso de consulta paralela:
- 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
Proprietário de recurso de bloqueio:
<type-specific-description> id=lock<lock-hex-address> mode=<mode> associatedObjectId=<associated-obj-id>
<type-specific-description> pode ser:
Para DATABASE: databaselock subresource=<databaselock-subresource> dbid=<db-id>
Para FILE: filelock fileid=<file-id> subresource=<filelock-subresource> dbid=<db-id>
Para OBJECT: objectlock lockPartition=<lock-partition-id> objid=<obj-id> subresource=<objectlock-subresource> dbid=<db-id>
Para PAGE: pagelock fileid=<file-id> pageid=<page-id> dbid=<db-id> subresource=<pagelock-subresource>
Para Key: keylock hobtid=<hobt-id> dbid=<db-id>
Para EXTENT: extentlock fileid=<file-id> pageid=<page-id> dbid=<db-id>
Para RID: ridlock fileid=<file-id> pageid=<page-id> dbid=<db-id>
Para APPLICATION: applicationlock hash=<hash> databasePrincipalId=<role-id> dbid=<db-id>
Para METADATA: metadatalock subresource=<metadata-subresource> classid=<metadatalock-description> dbid=<db-id>
Para HOBT: hobtlock hobtid=<hobt-id> subresource=<hobt-subresource> dbid=<db-id>
Para ALLOCATION_UNIT: allocunitlock hobtid=<hobt-id> subresource=<alloc-unit-subresource> dbid=<db-id>
<mode> pode ser:
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
Proprietário de recurso externo:
- External ExternalResource=<wait-type>
Proprietário de recurso genérico:
TransactionMutex TransactionInfo Workspace=<workspace-id>
Mutex
CLRTaskJoin
CLRMonitorEvent
CLRRWLockEvent
resourceWait
Proprietário de recurso de trava:
<db-id>:<file-id>:<page-in-file>
<GUID>
<latch-class> (<latch-address>)
Permissões
Requer a permissão VIEW SERVER STATE no servidor.