Понимание потоков и их времени жизни (очистка, удаление, закрытие)
Примечание: яМы уже прочитали следующие два вопроса:
Можете ли вы объяснить концепцию потоков?
м кодирования в C #
Почти во всех примерах кода, использующих потоки, почти всегда вызываются .Dispose (), .Flush (), .Close ().Что происходит в концепции потока?Если я неРасполагать поток, который я хранил в переменной, мое приложение где-то просачивается?Почему мне нужно вызывать любую из этих функций? Я'видел примеры кода, которые несделать это и по-прежнему выполнять работу (безочевидный поломка) Ям в настоящее время строит класс в моем приложении, который содержит основной метод (давайте вызовем егоGetStream()
) который возвращает поток черезmyWebRequest.GetResponse().GetResponseStream()
Основной методGetStream()
возвращаетStream
объект, который можно использовать для любой операции, для которой требуется поток (StreamReader, Bitmap () и т. д.).
Есть ли способ автоматически удалять поток после его последнего использования (сборщик мусора?), Не заставляя никого вызывать.GetStream()
вручную утилизировать его?
Как вы, вероятно, можете сказать, мои вопросы расплывчаты и носят общий характер. Мое понимание потоков не является надежным, поэтому любые ссылки на полезные статьи, которые предлагают более углубленный взгляд на потоки, чем может предложить вопрос SO, будут приветствоваться.