Выполнение потоков и волокон

В Microsoft Windows используется числовая система приоритетов, распределяющая выполняемые потоки по уровням от 1 до 31. Значение 0 зарезервировано для использования операционной системой. При наличии в очереди на выполнение нескольких потоков Windows сначала обслуживает поток с наивысшим приоритетом.

Каждый экземпляр SQL Server по умолчанию имеет уровень приоритета 7, что соответствует стандартному уровню. Это значение по умолчанию задает потокам SQL Server достаточно высокий уровень приоритета, позволяющий им получать достаточно ресурсов ЦП, не снижая производительности других приложений.

Параметр конфигурации priority boost используется для повышения приоритета потоков экземпляра SQL Server до 13 уровня (наивысший приоритет). Этот параметр назначает потокам SQL Server более высокий приоритет по отношению к другим приложениям. При этом потоки SQL Server всегда будут обслуживаться в первую очередь, а потоки других приложений не смогут занимать ресурсы системы ранее потоков с более высоким приоритетом. Представленные выше меры могут повысить производительность сервера, на котором выполняются только экземпляры SQL Server. Однако если в приложении SQL Server выполняется ресурсоемкая операция, то не рекомендуется присваивать высокий приоритет другим приложениям, так как это может привести к загрузке ресурсов, необходимых для обслуживания потока SQL Server.

Если на компьютере выполняется несколько экземпляров SQL Server, то повышение приоритетов одних может привести к снижению производительности других. Кроме того, включение параметра priority boost может привести к простою других приложений и компонентов, выполняемых на компьютере. Таким образом, данный параметр рекомендуется использовать только в строго определенных условиях.