Mirage писал(а):Программу в студию! Это больше похоже на проблемы конкретного программиста, а не языка.
на самом деле это больше похоже на то, что сборщик мусора не сработал до контрольного момента. А то, что ява пожирает память, пока она есть, в целях повышения быстродействия, вроде бы не отрицают и отцы-основатетели.
Мне все любопытно "текст в студию". Вы ж понимаете, что при таком объеме данных, пихаемых в память, текст отнюдь не ограничивается "одним экранчиком". И кто в здравом уме и по доброй воле будет в нем отлавливать косяки нерационального применения того или иного? В лучшем случае, бегло взглянув, будет высказано нечто типа "а вот в этом месте я использовал бы stringBuilder, потому что тогда будет быстрее и экономнее. После тщательного анализа, возможно, выяснится, что именно это место - как раз никакого влияния на быстродействие и экономичность не оказывает. Ага, щас кто-то скажет - с таким количеством данных - нужно использовать СУБД! Особенно те, кто СУБД использует когда надо и когда не надо. Что ж, еще одно направление, в некоторых случаях способное инициировать замедление обработки в десятки, а то и в сотни раз.
Так что текста в студию не будет. В том случае был чисто индивидуальный интерес "а вот ради практики, почему бы не сделать". Был взят оригинал на C# и прямо по тексту из спортивного интереса переписан на яву. Надо сказать, довольно хорошо переписывается, почти 1:1, доставляли только строковые функции взятия сегмента, где в параметрах не как у всех - позиция начального символа сегмента, его длина, а довольно странная выдумка: позиция начального символа, позиция первого символа, не входящего в выбираемый сегмент. Обратно с явы на сишарп, imho, все переписаывется гораздо хуже из-за обычного широкого использования в оной встроенных неименованных классов и всяких фишек инициализации "на лету", которые в сишарпе используются куда реже, а самое главное - по другому.
Добавлено спустя 6 минут 44 секунды:azsx писал(а):Нагрузка на старых процах большая
на старых процах и у явы проблема. Хотите резко замедлить яву - все тесты проводите на одноядерном процессоре с отключенным гипертредингом, желательно с сопроцессором похуже. И тогда будет оно.
Желаете замедлить С#... Кроме рекомендаций выше, вам поможет mono for linux. Чертовски медленно и неэффективно работает.
Чем старее, тем хуже. А самое новое mono - как уже говорил - только на SUSE и нигде более.