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 на сервере.