Max Worker Threads

Worker threads in SQL Server are logical representations of operating system threads. The SQL Server Database Engine uses them to execute tasks. The number of worker threads available to SQL Server processes can be configured using the max worker threads server configuration option.

Manually setting the max worker threads option can cause issues if not done correctly. If you set this value too low, it can result in thread starvation and decreased performance. On the other hand, setting this value too high can result in excessive context switching and reduced performance.

Suggested Action

It is generally recommended to leave this setting at its default value of 0, which allows SQL Server to automatically determine the correct number of active worker threads based on user requests.

How to Reset Max Worker Threads to Default

EXEC sys.sp_configure @configname = N'show advanced options',
                      @configvalue = N'1';
RECONFIGURE;
GO
EXEC sp_configure 'max worker threads', 0;
RECONFIGURE WITH OVERRIDE;
GO
EXEC sys.sp_configure @configname = N'show advanced options',
                      @configvalue = N'0';
RECONFIGURE;
GO

Further Reading

Thread and Task Architecture Guide | Microsoft Learn

Configure the max worker threads Server Configuration Option | Microsoft Learn

Verify Max Worker Threads Setting | Microsoft Learn