После загрузки профиля с ConfigureAwait(false) интерфейс профиля не обновляется
async void LoadProfile()
{
string json = await http.GetStringAsync(profileUrl).ConfigureAwait(false);
var profile = JsonUtility.FromJson<Profile>(json);
nameLabel.text = profile.name;
}
ConfigureAwait(false) добавили «для производительности», как советует статья про ASP.NET. Теперь присваивание nameLabel.text бросает исключение о главном потоке. Что сделать?
- Убрать ConfigureAwait(false) в коде на MonoBehaviour
- Заменить JsonUtility на Newtonsoft.Json
- Вызывать LoadProfile из FixedUpdate
- Добавить await Task.Yield() перед текстом
