У меня есть простой цикл while в C # следующим образом:
private static long a;
static void Main(string[] args)
{
a = 0;
while (a >= 0)
a++;
Console.WriteLine(a);
}
Независимо от того, что я делаю, он не будет использовать более 60% одного потока процессора (логический процессор), обычно около 40%. Я хочу, чтобы он использовал 100%, как цикл C ++.
- Я работаю в режиме разблокировки
- Я включил писатель, так что он вынужден держать цикл, а не оптимизировать его
- Статический, поэтому он не может автоматически создавать потоки делегатов (не уверен, что это возможно, но просто чтобы быть уверенным)
- Использование .NET core 2.1, если это имеет значение
- Visual studio 2017 ide / компилятор
- Обычное консольное приложение
И прежде чем люди спросят, я знаю, что он никогда не будет использовать 100% общего процессора, потому что он однопоточный. Я хочу 100% только одного логического процессора.
Любая помощь будет оценена.
Редактировать: Не то же самое, что однопоточное приложение, запущенное только на одном процессоре с exe, не помогает, это не выражение linq.