sys.dm_os_waiting_tasks (Transact-SQL)

Возвращает сведения об очереди задач, ожидающих освобождения определенного ресурса.

Имя столбца

Тип данных

Описание

waiting_task_address

varbinary(8)

Адрес ожидающей задачи.

session_id

smallint

Идентификатор сеанса, связанного с этой задачей.

exec_context_id

int

Идентификатор контекста выполнения, связанного с этой задачей.

wait_duration_ms

int

Общее время ожидания для этого типа ожиданий в миллисекундах. Это время включает длительность signal_wait_time.

wait_type

nvarchar(60)

Имя типа ожидания.

resource_address

varbinary(8)

Адрес ресурса, освобождения которого ожидает задача.

blocking_task_address

varbinary(8)

Задача, которая в настоящий момент блокирует этот ресурс.

blocking_session_id

smallint

Идентификатор сеанса, блокирующего данный запрос. Если этот столбец содержит значение NULL, то запрос не блокирован или сведения о сеансе блокировки недоступны (или не могут быть идентифицированы).

-2 = Блокирующий ресурс принадлежит потерянной распределенной транзакции.

-3 = Блокирующий ресурс принадлежит отложенной транзакции восстановления.

-4 = Идентификатор сеанса владельца кратковременной блокировки не может быть определен из-за внутренних переходов состояния кратковременной блокировки.

blocking_exec_context_id

int

Идентификатор контекста выполнения блокирующей задачи.

resource_description

nvarchar(1024)

Описание используемого ресурса. Дополнительные сведения см. в приведенном далее списке.

столбец resource_description

Столбец resource_description может содержать следующие значения.

Владелец ресурса пула потоков:

  • threadpool id=планировщик<шестнадцатеричный адрес>

Владелец ресурса параллельного запроса:

  • exchangeEvent id={Port|Pipe}<шестнадцатеричный адрес> WaitType=<тип-ожидания-при-обмене> nodeId=<идентификатор-узла-обмена>

Тип-ожидания-при-обмене:

  • e_waitNone

  • e_waitPipeNewRow

  • e_waitPipeGetRow

  • e_waitSynchronizeConsumerOpen

  • e_waitPortOpen

  • e_waitPortClose

  • e_waitRange

Владелец ресурса блокировки:

  • <зависимое-от-типа-описание> id=блокировка<шестнадцатеричный-адрес-блокировки> mode=<режим> associatedObjectId=<идентификатор-связанного-объекта>

    <зависимое-от-типа-описание> может принимать следующие значения:

    • Для баз данных (DATABASE): databaselock subresource=<вспомогательный-ресурс-блокировки-базы-данных> dbid=<идентификатор-базы-данных>

    • Для FILE: filelock fileid=<идентификатор-файла> subresource=<вспомогательный-ресурс-блокировки-файла> dbid=<идентификатор-базы-данных>

    • Для объектов (OBJECT): objectlock lockPartition=<идентификатор-блокировки-секции> objid=<идентификатор-объекта> subresource=<вспомогательный-ресурс-блокировки-объекта> dbid=<идентификатор-базы-данных>

    • Для PAGE: pagelock fileid=<идентификатор-файла> pageid=<идентификатор-страницы> dbid=<идентификатор-базы-данных> subresource=<вспомогательный-ресурс-блокировки-страницы>

    • Для ключа: keylock hobtid=<идентификатор-hobt> dbid=<идентификатор-базы-данных>

    • Для экстента (EXTENT): extentlock fileid=<идентификатор-файла> pageid=<идентификатор-страницы> dbid=<идентификатор-базы-данных>

    • Для RID: ridlock fileid=<идентификатор-файла> pageid=<идентификатор-страницы> dbid=<идентификатор-базы-данных>

    • Для приложения (APPLICATION): applicationlock hash=<хэш> databasePrincipalId=<идентификатор-роли> dbid=<идентификатор-базы-данных>

    • Для метаданных (METADATA): metadatalock subresource=<вспомогательный-ресурс-метаданных> classid=<описание-блокировки-метаданных> dbid=<идентификатор-базы-данных>

    • Для HOBT: hobtlock hobtid=<идентификатор-hobt> subresource=<вспомогательный-ресурс-hobt> dbid=<идентификатор-базы-данных>

    • Для единицы распределения (ALLOCATION_UNIT): allocunitlock hobtid=<идентификатор-hobt> subresource=<вспомогательный-ресурс-единицы-распределения> dbid=<идентификатор-базы-данных>

    Параметр <mode> (режим) может принимать следующие значения:

    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

Владелец внешнего ресурса:

  • External ExternalResource=<тип-ожидания>

Владелец универсального ресурса:

  • TransactionMutex TransactionInfo Workspace=<идентификатор-рабочей-области>

  • Мьютекс

  • CLRTaskJoin

  • CLRMonitorEvent

  • CLRRWLockEvent

  • resourceWait

Владелец ресурса кратковременной блокировки:

  • <идентификатор-базы-данных>:<идентификатор-файла>:<страница-в-файле>

  • <GUID>

  • <класс-кратковременной-блокировки> (<адрес-кратковременной-блокировки>)

Разрешения

Требует разрешения VIEW SERVER STATE на сервере.