У меня определены следующие политики Polly :
sharedBulkhead = Policy.Bulkhead(maxParallelizations, maxQueuingActions);
resilienceStrategy = Policy.Wrap(retryPolicy, circuitBreaker, sharedBulkhead);
policyWrap = fallbackForAnyException.Wrap(fallbackForCircuitBreaker.Wrap(resilienceStrategy));
Я выполняю политику следующим образом:
public bool Notify(IGrouping<string, TModel> messages)
{
var endPoint = messages.Key;
Task.Run(() =>
{
foreach (var message in messages)
{
policyWrap.Execute((context) => CallApi(endPoint), new Context(endPoint));
}
});
return true;
}
Я хочу, чтобы каждый вызов Notify()
запустить в новой теме.Итак, мой вопрос: должен ли я явно вызывать Task.Run(() =>
для нового потока, или он автоматически запускается в новом потоке с помощью polly?