Предполагается ли, что обратный вызов вызывается в другом потоке? Используя этот код:Ответный ответ на другую тему
client.ExecuteAsync<List<IngredientDto>>(request, Response =>
{
textBox1.Text += Response.Data.Count;
});
я получаю «InvalidOperationException»:
«Вызывающий поток не может получить доступ к этому объекту, потому что другой поток владеет.»
Не должен ли обратный вызов быть в потоке пользовательского интерфейса, или я не прав?
Я знаю, но не должен быть обратный вызов называется в потоке пользовательского интерфейса? Не является ли процесс в другом потоке, а затем уведомляет вызывающего абонента о потоке пользовательского интерфейса? – Matthew
Смотрите мое обновление. Обратный вызов вызывается в том же потоке, который запрашивается. – undefined
Спасибо, но это вопрос о том, почему команда RestSharp работала именно так. Например: если бы я использовал BackgroundWorker, DoWork находится в новом потоке, но ReportProgress находится в пользовательском интерфейсе. Почему существует разница в этих двух реализациях (RestSharp и BackgroundWorker)? Или больше, каков стандарт для обратных вызовов? – Matthew