Я пытаюсь изменить приоритет потока, но не могу заставить его работать.Я сделал кнопку, которая переключает приоритет между низким и высоким, и когда я проверяю это в списке вакансий, приоритет меняется.Но использование процессора не изменилось.Интересно, только потому, что я не использую полную мощность процессора или как это может быть.
Я не спрашиваю, хорошая ли это идея.Я спрашиваю, как это сделать.
Вот как я меняю приоритет.Это код класса:
private Thread tr;
public MainWindow()
{
InitializeComponent();
tr = new Thread(new ThreadStart(infiniteLoop));
tr.Start();
}
private void Button_Click(object sender, RoutedEventArgs e)
{
if (Process.GetCurrentProcess().PriorityClass == ProcessPriorityClass.High)
{
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.Idle;
tr.Priority = ThreadPriority.Lowest;
description.Text = "Idle";
}
else
{
Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.High;
tr.Priority = ThreadPriority.Highest;
description.Text = "High";
}
}
private void infiniteLoop()
{
while (true)
{
}
}