| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Общие вопросы по .NET и C# > Поток самоуничтожается? |
| Автор: СерегаГоляков 4.4.2011, 10:07 | ||
| В поток передается ф-я. Ф-я вычисляется дойдя до своего конца. ф-я завершается и поток сам уничтожается?
|
| Автор: AntonSaburov 4.4.2011, 13:01 |
| Когда gc его обработает - так и уничтожится. |
| Автор: WolfTheGrey 4.4.2011, 17:19 |
| да, поток заканчивает свою жизнь и попадает в мусорную корзину. Много людей пытались поток реанимировать, передав ему новые задачи. Но все пытания были тщетны. К тому моменту поток был мертв. Есть только один способ как законсервировать поток: запустить в нем бесконечный цикл, который прерывается в ожидании новых даных. |
| Автор: -Mikle- 4.4.2011, 18:20 |
Он его не реанимирует, не путайте человека... ThreadPool умеет создавать потоки и держать их в открытом состоянии, пока есть вероятность, что они еще нужны. После простоя потока, он уничтожает его. Подробнее о его работе можно найти в интернете. |
| Автор: СерегаГоляков 4.4.2011, 20:38 |
| Всем спасибо |
| Автор: azesmcar 4.4.2011, 20:40 | ||||
слово "реанимация" здесь была использована в контексте передачи потоку новой задачи. Перефразировать можно так: используйте ThreadPool чтобы избежать оверхэда на ненужное удаление и создание потоков. Не все, количество потоков, равное минимальному всегда остаются в пуле. Уничтожаются по таймауту "лишние". |
| Автор: WolfTheGrey 5.4.2011, 03:53 |
| А Джеффри Рихтер писал: что Пулами лучше не баловаться. точно не помню почему, а в кратце - они сильно кушают процессорное время. |
| Автор: azesmcar 5.4.2011, 08:10 | ||||
Это где же он такое писал? Прошу цитату.
|
| Автор: -Mikle- 5.4.2011, 10:07 | ||
А, видимо я не понял. Согласен тогда конечно, сорри. |