Окно отладки Parallel Stacks в Visual Studio 2017 не отображает выходные данные для последовательных асинхронных / ожидающих вызовов - PullRequest
0 голосов
/ 08 ноября 2018

Я пытаюсь подтвердить, является ли нормальным следующее наблюдаемое поведение в окне отладчика Parallel Stacks (Visual Studio 2017 15.8.5).

Если какой-либо из блоков, Parallel Stack-1 или Parallel Stack-2 , запускается изолированно во время отдельных прогонов, то вывод параллельных стеков выглядит нормально. Однако, если они выполняются вместе последовательно во время одного и того же сеанса отладки, выходные данные для операторов Parallel Stack-2 не выводятся.

Ниже приведены скриншоты следов стека в каждой из точек останова.

namespace TaskYield
{
    class Program
    {
        static async Task TaskYield()
        {
            await Task.Yield();
        } /*BREAKPOINT-2*/

        static async Task TaskDelay()
        {
            await Task.Delay(3000);
        }

        static void Main(string[] args)
        {
            // Parallel Stack-1
            var ty = TaskYield();
            ty.Wait(); /*BREAKPOINT-1*/

            // Parallel Stack-2    
            var td = TaskDelay();
            td.Wait();
        } /*BREAKPOINT-3*/
    }
}

Параллельный стек-1

BreakPoint-1

BREAKPOINT-1

BreakPoint-2

BREAKPOINT-2

Параллельный стек-2

BreakPoint-3

enter image description here

...