мне нравится понимать, в чем разница между Nested Task and Child Task
.
var outerTask = Task.Factory.StartNew( () =>
{
var nestedTask = Task.Factory.StartNew( () =>
{
Console.WriteLine("Inside nestedTask");
});
});
A "child task" looks like this:
var parentTask = Task.Factory.StartNew( () =>
{
var childTask = Task.Factory.StartNew( () =>
{
Console.WriteLine("Inside childTask");
}, TaskCreationOptions.AttachedToParent );
});
здесь я прикрепил код.
кажется, что когда мы запускаем любую вложенную задачу, внешняя задача может завершиться до внутренней задачи, но в случае дочерней задачи всегда дочерняя задача завершается до родительской задачи. я не уверен, что я прав или нет. поэтому будет полезно, если кто-нибудь подскажет, когда переходить к вложенной задаче, а когда к дочерней задаче с примером сценария. Спасибо