В течение самого долгого времени я думал, что асинхронный синоним запускает что-то в фоновом потоке, а синхронно - в основном потоке (блокируя обновления и взаимодействия UI). Я понимаю, что не работает на основном потоке для дорогостоящих действий, потому что он не позволяет выполнять действия пользовательского интерфейса, поскольку основной поток занят, но почему синхронно хлопотно?
Однако с тех пор мне стало известно, что вы можете совершать асинхронные вызовы в основном потоке и синхронные вызовы фоновых потоков.
Я всегда слышу, как люди говорят, что не используют дорогостоящие вызовы синхронно или в основном потоке, так как это блокирует пользовательский интерфейс для пользователя. Являются ли этими двумя отдельными вопросами, чтобы я не делал этого? Каковы различия?