Я просматривал эту статью об использовании задач в C #, и я бродил, если кто-то может что-то прояснить для меня?
Не вызывает ожидание для задачи, чтобы победить цель создания задачи, потому что не будет ли она заморозить основной поток в любом случае, потому что теперь основной поток должен ждать завершения задачи.
Я предполагаю, однако, что ожидание не будет вызвано сразу, так что теперь, когда бы вы назвали его или как еще вы узнали бы, когда распорядиться задачей.Предполагая, что у нас есть простой случай, подобный этому:
void MyFunction()
{
Task t = Task.Factory.StartNew(() => { System.Threading.Thread.Sleep(5000); });
}
, если вы сразу вызовете t.Wait (), основной поток все еще будет ждать 5 секунд, прежде чем сможет сделать что-то еще, что в некотором роде побеждаетс точки зрения пользователей, они не смогут ничего сделать за 5 секунд.Как вы узнали, что через 5 секунд эта задача была выполнена?И вы можете избавиться от т?Как правильно справиться с этим?
Извините, если вопрос действительно наивный :( Спасибо всем: D