В моем приложении я получаю сообщения и вызванное событие. Событие определяется в библиотеке, поэтому я могу только подписаться.Управление задачами в .NET
consumer.Received += (model, ea) => new Task(() =>
{
var body = ea.Body;
var message = Encoding.UTF8.GetString(body);
Console.WriteLine(message);
}).Start();
Я запускаю новую задачу, когда сообщение получено. Но это может быть очень большое количество сообщений и выполняемая задача. Я думаю, когда я буду использовать новый Task().Start()
, он начнется сразу, поэтому моя система может перегрузиться. Возникает вопрос: как управлять задачами, не создавая контейнеры с фиксированным количеством запущенных задач, потому что я хочу использовать максимум возможностей и доверительное управление для .NET. Благодарю.