Я пишу приложение, которое довольно последовательно выполняет несколько операций с сокетами и имеет систему обмена сообщениями о событиях, аналогичную парадигме javascript (eventlistener.on(,)/eventlistener.emit()). Я вывожу некоторую отладочную информацию из асинхронного вызова, который добавляет элемент xaml TextBlock с отладочной информацией. Когда я испускаю одно и то же событие вне асинхронной функции, оно работает нормально. Я обернул свое событие on/emit вызовами с помощью мьютексов, которые, как я полагал, будут достаточно хороши, чтобы позволить мне писать в TextBlock.
Чтобы визуализировать процесс события:
[класс]->слушатель->излучать(‹тип>,‹данные>)->[Диспетчер]->[Слушатели(‹тип>)]->лямбда([класс],‹данные>)
Я недостаточно знаком с асинхронными функциями WinRT и идеологиями Windows 8 UI/Metro/Modern, чтобы знать, есть ли у меня особый способ добавления TextBlock из потока или есть ли лучший способ сделать это.
Короче говоря, можно ли добавить текстовый блок из асинхронной функции, и если да, то нужно ли мне делать что-то особенное?