sys.dm_os_tasks
Aktualisiert: 14. April 2006
Gibt eine Zeile für jeden aktiven Task in der SQL Server-Instanz zurück.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
task_address |
varbinary(8) |
Speicheradresse des Objekts. |
task_state |
nvarchar(60) |
Der Status des Tasks. Die folgenden Werte sind möglich: PENDING: Warten auf einen Arbeitsthread. RUNNABLE: Ausführbar, doch wird auf das Eintreffen eines Quantums gewartet. RUNNING: Wird derzeit auf dem Zeitplanungsmodul ausgeführt. SUSPENDED: Verfügt über einen Arbeitsthread, wartet jedoch auf ein Ereignis. DONE: Abgeschlossen. SPINLOOP: In einem Spinlock festgehalten. |
context_switches_count |
int |
Anzahl der Kontextwechsel im Zeitplanungsmodul, die dieser Task abgeschlossen hat. |
pending_io_count |
int |
Anzahl der physikalischen E/A-Vorgänge, die dieser Task ausgeführt hat. |
pending_io_byte_count |
bigint |
Gesamtbytezahl der von diesem Task ausgeführten E/A-Vorgänge. |
pending_io_byte_average |
int |
Durchschnittliche Bytezahl der von diesem Task ausgeführten E/A-Vorgänge. |
scheduler_id |
int |
ID des übergeordneten Zeitplanungsmoduls. Dies ist ein Handle für die Zeitplanungsmodul-Informationen zu diesem Task. Weitere Informationen finden Sie unter sys.dm_os_schedulers. |
session_id |
smallint |
ID der Sitzung, die dem Task zugeordnet ist. |
exec_context_id |
int |
Die dem Task zugeordnete Ausführungskontext-ID. |
request_id |
int |
Die ID der Anforderung des Tasks. Weitere Informationen finden Sie unter sys.dm_exec_requests. |
worker_address |
varbinary(8) |
Speicheradresse des Arbeitsthreads, der den Task ausführt. NULL = Task wartet entweder darauf, dass ein Arbeitsthread ausgeführt werden kann, oder die Ausführung des Threads wurde soeben beendet. Weitere Informationen finden Sie unter sys.dm_os_workers. |
host_address |
varbinary(8) |
Speicheradresse des Hosts. 0 = Hosting wurde zum Erstellen des Tasks nicht verwendet. Dadurch kann der Host identifiziert werden, der zum Erstellen dieses Tasks verwendet wurde. Weitere Informationen finden Sie unter sys.dm_os_hosts. |
Berechtigung
Erfordert die VIEW SERVER STATE-Berechtigung auf dem Server.
Beispiele
A. Überwachen paralleler Anforderungen
Für parallel ausgeführte Anforderungen werden mehrere Zeilen für die gleiche Kombination von (<session_id>, <request_id>) angezeigt. Verwenden Sie die folgende Abfrage, um den Grad an Parallelität für alle aktiven Anforderungen zu finden.
Hinweis: |
---|
request_id ist innerhalb einer Sitzung eindeutig. |
SELECT
task_address,
task_state,
context_switches_count,
pending_io_count,
pending_io_byte_count,
pending_io_byte_average,
scheduler_id,
session_id,
exec_context_id,
request_id,
worker_address,
host_address
FROM sys.dm_os_tasks
ORDER BY session_id, request_id;
B. Zuordnen von Sitzungs-IDs zu Windows-Threads
Mit der folgenden Abfrage können Sie einem Sitzungs-ID-Wert eine Windows-Thread-ID zuordnen. Sie können dann die Leistung des Threads im Windows-Systemmonitor überwachen. Mit der folgenden Abfrage werden keine Informationen für ruhende Sitzungen (sleeping) zurückgegeben.
SELECT STasks.session_id, SThreads.os_thread_id
FROM sys.dm_os_tasks AS STasks
INNER JOIN sys.dm_os_threads AS SThreads
ON STasks.worker_address = SThreads.worker_address
WHERE STasks.session_id IS NOT NULL
ORDER BY STasks.session_id;
GO
Siehe auch
Verweis
Dynamische Verwaltungssichten und -funktionen
Dynamische Verwaltungssichten in Verbindung mit dem SQL Server-Betriebssystem
Andere Ressourcen
Hilfe und Informationen
Informationsquellen für SQL Server 2005
Änderungsverlauf
Version | Verlauf |
---|---|
14. April 2006 |
|
05. Dezember 2005 |
|