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 lista över alla trådar i SQL Server-operativsystemet som körs under SQL Server-processen.
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_threads. Den här syntaxen stöds inte av en serverlös SQL-pool i Azure Synapse Analytics.
| Kolumnnamn | Datatyp | Description |
|---|---|---|
| thread_address | varbinary(8) | Minnesadress (primärnyckel) för tråden. |
| started_by_sqlservr | bit | Indikerar trådinitiatorn. 1 = SQL Server startade tråden. 0 = En annan komponent startade tråden, såsom en utökad lagrad procedur från SQL Server. |
| os_thread_id | int | ID för tråden som tilldelas av operativsystemet. |
| status | int | Intern statusflagga. |
| instruction_address | varbinary(8) | Adressen till instruktionen som för närvarande exekveras. |
| creation_time | datetime | Tiden då den här tråden skapades. |
| kernel_time | bigint | Mängd kärntid som används av denna tråd. |
| usermode_time | bigint | Hur mycket användartid som används av denna tråd. |
| stack_base_address | varbinary(8) | Minnesadressen för den högsta stackadressen för denna tråd. |
| stack_end_address | varbinary(8) | Minnesadressen till den lägsta stackadressen i denna tråd. |
| stack_bytes_committed | int | Antal bytes som är committerade i stacken. |
| stack_bytes_used | int | Antal bytes som aktivt används i tråden. |
| samhörighet | bigint | CPU-mask som denna tråd körs på. Detta beror på värdet som konfigurerats av ALTER SERVER CONFIGURATION SET PROCESS AFFINITY-satsen . Det kan vara annorlunda än schemaläggaren vid mjuk affinitet. |
| Priority | int | Prioritetsvärdet för denna tråd. |
| Lokal | int | Cachad lokal LCID för tråden. |
| Bevis | varbinary(8) | Cachad imitationstoken för tråden. |
| is_impersonating | int | Indikerar om denna tråd använder Win32-imitation. 1 = Tråden använder säkerhetsuppgifter som skiljer sig från processens standard. Detta indikerar att tråden utger sig för att vara en annan entitet än den som skapade processen. |
| is_waiting_on_loader_lock | int | Operativsystemstatus för om tråden väntar på laddarlåset. |
| fiber_data | varbinary(8) | Nuvarande Win32-fiber som körs på tråden. Detta gäller endast när SQL Server är konfigurerad för lättviktspoolning. |
| thread_handle | varbinary(8) | Endast intern användning. |
| event_handle | varbinary(8) | Endast intern användning. |
| scheduler_address | varbinary(8) | Minnesadressen till schemaläggaren som är kopplad till denna tråd. För mer information, se sys.dm_os_schedulers (Transact-SQL). |
| arbetare_adress | varbinary(8) | Minnesadressen för den arbetare som är bunden till denna tråd. För mer information, se sys.dm_os_workers (Transact-SQL). |
| fiber_context_address | varbinary(8) | Intern fiberkontextadress. Detta gäller endast när SQL Server är konfigurerad för lättviktspoolning. |
| self_address | varbinary(8) | Intern konsekvenspekare. |
| processor_group | smallint |
Gäller för: SQL Server 2008 R2 (10.50.x) och senare. Processorgrupp-ID. |
| 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.
Anteckningar om Linux-versionen
På grund av hur SQL-motorn fungerar i Linux stämmer en del av denna information inte överens med Linux-diagnostikdata. Till exempel os_thread_id stämmer inte överens med resultatet av verktyg som ps,top eller procfs (/proc/pid). Detta beror på Platform Abstraction Layer (SQLPAL), ett lager mellan SQL Server-komponenter och operativsystemet.
Examples
Vid uppstart startar SQL Server trådar och kopplar sedan arbetare till dessa trådar. Externa komponenter, såsom en utökad lagrad procedur, kan dock starta trådar under SQL Server-processen. SQL Server har ingen kontroll över dessa trådar. sys.dm_os_threads kan tillhandahålla information om ostörda trådar som förbrukar resurser i SQL Server-processen.
Följande fråga används för att hitta arbetare, tillsammans med tid som används för exekvering, som kör trådar som inte startats av SQL Server.
Anmärkning
För att vara kortfattad använder följande fråga en asterisk (*) i uttalandet SELECT . Du bör undvika att använda asterisken (*), särskilt mot katalogvyer, dynamiska hanteringsvyer och systemtabellsvärda funktioner. Framtida uppgraderingar och versioner av Microsoft SQL Server kan lägga till kolumner och ändra ordningen på kolumnerna i dessa vyer och funktioner. Dessa förändringar kan förstöra applikationer som förväntar sig en viss ordning och antal kolumner.
SELECT *
FROM sys.dm_os_threads
WHERE started_by_sqlservr = 0;
Se även
sys.dm_os_workers (Transact-SQL)
SQL Server-operativsystemrelaterade dynamiska hanteringsvyer (Transact-SQL)