Condividi tramite


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.