LINUX.ORG.RU

Если одна упадет — упадут все.

elverion
()
Ответ на: комментарий от namezys

Я не знаю, я замерял - чуть ли не по 5 метров экономии с каждого включения.

Может общий интерпретатор питона, сделавший import gtk в сумме 1 раз реально быстрей и легче?

А, еще - стартует оно быстрей.

t184256 ★★★★★
() автор топика
Ответ на: комментарий от namezys

ну это же питон. 5 Мб - это разве много для него?

5Мб - это слишком много для меня.

t184256 ★★★★★
() автор топика
Ответ на: комментарий от namezys

ну это же питон. 5 Мб - это разве много для него?

У меня не только питон, у меня еще и жаба.

Да не та, которой 256 Мб мало, а та, из-за которой у меня на основном компе 256 Мб всего, а на мелких целевых железках и того меньше.

t184256 ★★★★★
() автор топика
Ответ на: комментарий от namezys

Да, ибо язык хороший, знакомый, много gtk, dbus и хочу без мороки юзать биндинги к любой чепухе от wnck до bluez. Пока следущий по этим критериям - Vala, а значит мне нужен питон.

t184256 ★★★★★
() автор топика
Ответ на: комментарий от t184256

питон от природы жрет много памяти (и от стиля программирования). да и процессор любит. очень

да и не стоит надеется на gc в питоне - практика показала, что он не смог очиститься от выделения 2 Гб простых классов, наследников от dict. У вас может быть тоже самое

namezys ★★★★
()
Ответ на: комментарий от namezys

практика показала, что он не смог очиститься от выделения 2 Гб простых классов, наследников от dict

Это зависит от рукожопия практиканта.

baverman ★★★
()

Чем хороша/плоха идея?

Хочу сделать также. Постоянно держать запущенными в одном интерпретаторе dmenu-подобную хрень и свой файловый менеджер, а то они вытесняются из кеша и через некоторое время очень медленно стартуют.

baverman ★★★
()
Ответ на: комментарий от baverman

Руки заточаны ровно.

Читаем описание gc питона. Там сказано, что gc работает хорошо в большинстве случаев, но не гарантирует очистку всех неиспользуемых объектов

namezys ★★★★
()
Ответ на: комментарий от baverman

отлично. Permgen error последний раз видел очень давно. К слову, даже тогда он возникал исключительно от частых передеплоев. в продакшене это быть не может. Там аппликуха загрузилась. всякие фреймворки посоздавали свои классы и все, больше в пермген ничего не идет. И он постепенно опускается до реально занятого значения.

JFreeM ★★★☆
()
Ответ на: комментарий от JFreeM

К слову, даже тогда он возникал исключительно от частых передеплоев

О том и речь. В продакшене зверек, как правило, подкрадывается незаметно. Уже все и позабыть успели, а тут, с очередным фиксом, хлобысь и весь контейнер надо рестартить. Энтерпрайз, хуле.

baverman ★★★
()
Ответ на: комментарий от baverman

вообще говоря, конкретно эта проблема - результат кривых ручек программистов. а не jvm как таковой. Если бы все писали выгружающиеся классы, такого бы не было, но увы.

JFreeM ★★★☆
()
Ответ на: комментарий от baverman

Иногда мешает

Но проблема не в этом. Ключевые слова: память не возвращается системе, фрагментация кучи. Это если предположить, что gc работает идеально

namezys ★★★★
()
Ответ на: комментарий от baverman

нет. это питон. и его внутренняя каша.

в общем течет он. как не прискорбно. Иногда правда стабилизируется

namezys ★★★★
()
Ответ на: комментарий от namezys

в общем течет он. как не прискорбно.

Это уже детали реализации. Почти любая, более-менее крупная программа на си/плюсах течет. С этим надо просто смириться. Или валгринд в зубы и вперед.

baverman ★★★
()
Ответ на: комментарий от baverman

Хотя меня утечки не донимают. На сервере крутится in-memory очередь сообщений, написанная на tornado. Как было 8mb полгода назад, так и сейчас столько же занимает. Мой опыт говорит, что написание надежных сервисов на питоне достаточно простая задача, в отличие от.

baverman ★★★
()
Ответ на: комментарий от baverman

> С этим надо просто смириться. Или валгринд в зубы и вперед.

Причина утечек памяти в питоне может быть недоработка в gc

namezys ★★★★
()
Ответ на: комментарий от namezys

Причина утечек памяти в питоне может быть недоработка в gc

Это примитивный подсчет ссылок. Ты или держишь ссылку на объект или не держишь. Какие недоработки? Давай примеры, уж.

baverman ★★★
()
Ответ на: комментарий от baverman

Циклические ссылки. Обещали, что будут удаляться. Потом написали, что вероятно, будут удаляться. WeakLink аналогично

namezys ★★★★
()
Ответ на: комментарий от baverman

Ладно. У нас есть код, который загружает на стеке dict'ов на 2 Гб. Потом мы просто выходим из функи. А 2 Гб остаются выделенные. ПРи следующем вхождении он откусывает еще (правда не 2 Гб, меньше)

И так легко доходит до 8 Гб

namezys ★★★★
()
Ответ на: комментарий от namezys

Циклические ссылки в питоне допуостимы

Ничего подобного, gc как раз и занимается тем что вычисляет замкнутые циклы.

true_admin ★★★★★
()
Ответ на: комментарий от namezys

А 2 Гб остаются выделенные

сделай gc.collect(). По-дефолту оно каждые 100(кажись) инструкций отрабатывает, поэтому иногда видно что объекты не сразу высвобождаются.

true_admin ★★★★★
()
Ответ на: комментарий от true_admin

> Ничего подобного, gc как раз и занимается тем что вычисляет замкнутые циклы.

А я что сказал?

namezys ★★★★
()
Ответ на: комментарий от true_admin

ну вы меня за детсад держите? gc.collect() делали. Даже ждали. Даже запускали вского говна типа while 1;

namezys ★★★★
()
Ответ на: комментарий от namezys

NDA

Я, наверное, сегодня слишком туманно выражаюсь. Если не можешь подготовить минимальный код, показывающий проблему, то проблемы нет.

baverman ★★★
()

1 комментарий по теме - хоть сноси.

t184256 ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.