В Вто, 17/03/2009 в 00:05 +0300, Alexey Pechnikov пишет: > Hello! > > On Monday 16 March 2009 20:48:44 Покотиленко Костик wrote: > > > Про потребляемую память забываем. > > > > И яркий пример тому тот же spamassassin. Он одновременно может только 5 > > потоков обрабатывать, как написано в документации, "unless you know what > > you're doing". > > А что, все программы на С умеют работать с тысячами потоков? Интереснее > работа > с событиями в тикле, к примеру, когда не требуется плодить тучу потоков, чтоб > одновременно снимать данные, скажем, с десятка цисок.
Это вопрос больше алгоритмов, и меньше языков. На языках более высокого уровня такое тяжело сделать компактно. > > Вы правы, когда говорите, что > > - нет смысла экономить килобайты и мегабайты памяти, когда речь идёт о > > ПО работающем с единственном экземпляре, т.к. память дешёвая; > > - нет смысла оптимизировать тысячи и сотни тысяч MIPS'ов в процедуре, > > которая выполняется раз в относительно большой период времени, т.к. Вы > > сэкономите не больше секунды. > > И в чем заключается "экономия"? > > Например, работа со строками на С без использования специальных библиотек > значительно менее эффективна, чем в скриптовых языках. Попробуйте написать > программу на С, которая по обработке регекспов обгонит перловый скрипт. > > Ну, возьмем другой пример - сжатие/распаковка данных. Лично я предпочитаю > делать расширения к SQLite, чтобы можно было пользоваться как из тикля, так и > из шелла, в данном случае используем системную zlib, в итоге получаем: > $ cat compress.c |wc -l > 120 > И это с комментариями и инструкциями по сборке! И в моем полном распоряжении > эффективный инструмент, доступный как из программы, так и в консоли. Плюс > SQLiteMan, написанный С++, и некоторые другие проекты пользуются этим и > другими модулями, при том, что я при написании кода могу совершенно не > беспокоиться, на чем будет сделано клиентское приложение. Вот это и есть > эффективность (оптимизируем именно то, что нуждается в оптимизации) плюс > повторное использование кода. Ваши же десятки и сотни килобайт кода, который > годится только для одного вашего проекта, никто и читать не станет, проще > заново написать. Хорошее решение то, что работает. -- Покотиленко Костик <[email protected]> -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

