Неожиданно много комментируемый пост "Пул потоков" заставил меня взглянуть пристальнее на некоторые модули, из недавно написанных, и кое-что подправить. Собственно, эти прогулки по исходникам стали причиной этого поста... Когда говорят о многопоточных прогаммах, действительно (склоняю голову в согласии с Максимом Сохацким, автором Open BeOS , который все время пытается напомнить об этом), чаще всего идет речь о операциях ввода-вывода которые выносятся в отдельный поток или вызываются асинхронно. А там где есть ввод и вывод, обязательно есть БУФЕР. То есть, кусок памяти, куда или откуда этот самый ввод/вывод происходит. "Ну и что?", - скажите Вы! А то, что выделение памяти, это тоже ресурсоемкая операция! Это в обычной "куче". В "куче", которой правляет сборщик мусора выделение дешевое (если верить Sun-у и Microsoft-у), но дорого обходится освобождение памяти. Так или иначе, работа с памятью - штука дорогая. Особенно, когда речь идет о выденении ...