Not
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL-databas i Microsoft Fabric
Returnerar en rad för varje aktiv uppgift i SQL Server-instansen. En uppgift är den grundläggande exekveringsenheten i SQL Server. Exempel på uppgifter inkluderar en förfrågan, inloggning, utloggning och systemuppgifter som spökrensningsaktivitet, kontrollpunktaktivitet, loggskrivare, parallell ombyggnadsaktivitet. För mer information om uppgifter, se Tråden och Task Architecture Guide.
Anmärkning
För att kalla detta från Azure Synapse Analytics eller Analytics Platform System (PDW), använd namnet sys.dm_pdw_nodes_os_tasks. Den här syntaxen stöds inte av en serverlös SQL-pool i Azure Synapse Analytics.
| Kolumnnamn | Datatyp | Description |
|---|---|---|
| task_address | varbinary(8) | Minnesadressen till objektet. |
| task_state | nvarchar(60) | Uppgiftens tillstånd. Detta kan vara något av följande: VÄNTAR: Väntar på en arbetstråd. RUNNBAR: Körbar, men väntar på att få en kvant. LÖPER: Körs just nu på schemaläggaren. AVSTÄNGD: Har en arbetare, men väntar på ett evenemang. KLART: Slutfört. SPINLOOP: Fast i en spinlock. |
| context_switches_count | int | Antal schemaläggar-kontextbyten som denna uppgift har slutfört. |
| pending_io_count | int | Antal fysiska I/O:n som utförs av denna uppgift. |
| pending_io_byte_count | bigint | Totalt byteantal I/O:er som utförs av denna uppgift. |
| pending_io_byte_average | int | Genomsnittligt byteantal av I/O:er som utförs av denna uppgift. |
| scheduler_id | int | ID för föräldraschemaläggaren. Detta är ett handtag till schemaläggarinformationen för denna uppgift. För mer information, se sys.dm_os_schedulers (Transact-SQL). |
| session_id | smallint | ID för sessionen som är kopplad till uppgiften. |
| exec_context_id | int | Exekveringskontext-ID som är kopplat till uppgiften. |
| request_id | int | ID på uppgiftens begäran. Mer information finns i sys.dm_exec_requests (Transact-SQL). |
| worker_address | varbinary(8) | Minnesadressen till den arbetare som kör uppgiften. NULL = Uppgiften väntar antingen på att en arbetare ska kunna köras, eller så har uppgiften precis körts klart. För mer information, se sys.dm_os_workers (Transact-SQL). |
| host_address | varbinary(8) | Värdens minnesadress. 0 = Hosting användes inte för att skapa uppgiften. Detta hjälper till att identifiera värden som användes för att skapa denna uppgift. För mer information, se sys.dm_os_hosts (Transact-SQL). |
| parent_task_address | varbinary(8) | Minnesadressen till uppgiften som är objektets förälder. |
| pdw_node_id | int |
gäller för: Azure Synapse Analytics, Analytics Platform System (PDW) Identifieraren för noden som den här fördelningen är på. |
Permissions
På SQL Server och SQL Managed Instance kräver VIEW SERVER STATE behörighet.
I SQL Database Grundläggande, S0och S1 tjänstmål och för databaser i elastiska pooler, serveradministratör konto, Microsoft Entra-administratör konto eller medlemskap i ##MS_ServerStateReader##serverrollen krävs. För alla andra SQL Database-tjänstmål krävs antingen VIEW DATABASE STATE behörighet för databasen eller medlemskap i ##MS_ServerStateReader## serverrollen.
Behörigheter för SQL Server 2022 och senare
Kräver BEHÖRIGHET FÖR VISNINGSSERVERNS PRESTANDATILLSTÅND på servern.
Examples
A. Övervakning av parallella förfrågningar
För förfrågningar som körs parallellt kommer du att se flera rader för samma kombination av (<session_id>, <request_id>). Använd följande fråga för att hitta alternativet Konfigurera maximal grad av parallellism Serverkonfiguration för alla aktiva förfrågningar.
Anmärkning
En request_id är unik inom en session.
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. Associera sessions-ID:n med Windows-trådar
Du kan använda följande fråga för att associera ett sessions-ID med ett Windows-tråd-ID. Du kan sedan övervaka trådens prestanda i Windows Performance Monitor. Följande fråga ger inte information för sessioner som är i viloläge.
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
Se även
SQL Server-operativsystemrelaterade dynamiska hanteringsvyer (Transact-SQL)
Tråd- och uppgiftsarkitekturguide