Смотрите этот пример: https://github.com/mono/gtk-sharp/blob/master/sample/AsyncSample.csмоно метод GTK # асинхронных в Ui нити
Он использует асинхра/ждет событий пользовательского интерфейса. Ожидая работу, он проверяет, синхронизирован ли он (это правильный термин?) В потоке пользовательского интерфейса. В моих личных экспериментах этого никогда не было, пример всегда печатал «Не в основной теме».
Это правильное поведение? Как мы должны обновить интерфейс после ожидания работы?
Какова ваша 'SynchronizationContext.Current' перед' await'? –
@StephenCleary null: p –
У вас есть последние версии? Должен быть «GLibSynchronizationContext». –