Сообщение Task.Run - кол-во одновременных по умолчанию от 05.03.2020 23:36
Изменено 05.03.2020 23:38 Shmj
Task.Run - кол-во одновременных по умолчанию
Чего й то не понял:
Одновременно запускается не так много задач — как я понял, по числу ядер процессора или типа того (на моем старичке — только 4 штуки). Где это установлено? В TaskScheduler.Current.MaximumConcurrencyLevel — офердофигища.
class Program
{
static async Task Main(string[] args)
{
for (int i = 0; i < 100; i++)
{
var copy = i;
_ = Task.Run(() =>
{
Console.WriteLine("Start " + copy);
while (!HasUpdates())
{
Thread.Sleep(5000);
}
Console.WriteLine("End " + copy);
});
}
Console.ReadLine();
Console.WriteLine("Hello World!");
}
public static bool HasUpdates()
{
var random = new Random();
return random.Next(1, 5) == 3;
}
}
Одновременно запускается не так много задач — как я понял, по числу ядер процессора или типа того (на моем старичке — только 4 штуки). Где это установлено? В TaskScheduler.Current.MaximumConcurrencyLevel — офердофигища.
Task.Run - кол-во одновременных по умолчанию
Чего й то не понял:
Одновременно запускается не так много задач — как я понял, по числу ядер процессора или типа того (на моем старичке — только 4 штуки). Где это установлено? В TaskScheduler.Current.MaximumConcurrencyLevel — офердофигища.
class Program
{
static async Task Main(string[] args)
{
for (int i = 0; i < 100; i++)
{
var copy = i;
_ = Task.Run(() =>
{
Console.WriteLine("Start " + copy);
Thread.Sleep(5000);
Console.WriteLine("End " + copy);
});
}
Console.ReadLine();
Console.WriteLine("Hello World!");
}
}
Одновременно запускается не так много задач — как я понял, по числу ядер процессора или типа того (на моем старичке — только 4 штуки). Где это установлено? В TaskScheduler.Current.MaximumConcurrencyLevel — офердофигища.