Re[4]: wpf, выполнение действий в разных потоках
От: alex1010  
Дата: 14.07.16 15:52
Оценка:
Здравствуйте, Serginio1, Вы писали:
S>
S>await Task.Delay(1000).ConfigureAwait(false); // Не блокирует и заканчивает поток в том потоке в котором и вызван.
S>


S> Создавай задачи, главное, что бы они использовали внутри асинхронные методы только с ConfigureAwait(false);

S>Иначе получишь взаимную блокировку.

S>http://ru.stackoverflow.com/questions/512968/win10-universal-app-async-%d0%b7%d0%b0%d0%b4%d0%b5%d1%80%d0%b6%d0%ba%d0%b0/513241#513241


я запустил обращение к камере в своей видеопанели таким образом (из UI потока)
await Task.Run( cam1 ).ConfigureAwait( false );
и она подвисла на пару десятков секунд. Т.к внутри cam1 идет доступ к отрисовке UI и пока не закончится, не отвисает. ConfigureAwait не помогает.

Такое впечатление, что имеющийся другой видеоплеер как-то ловит SynchronizationContext.Send и вручную что ли распределяет..
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.