Что лучшее решение состоит в том, чтобы заменить новое средство выделения памяти в существующем коде?

На работе я работаю, мой основной монитор (вторичный экран ноутбука), в режиме портрета. Мне действительно нравится он. Я стал испорченным к наблюдению большего количества кода сразу. Я не нахожу, что это поощряет более длинные методы вообще. Иногда, я натыкаюсь на код, который немного слишком широк, так как боковые панели IDE ограничивают его немного, но я в основном использую Eclipse (Рациональный Разработчик приложений, но основанный на Eclipse), таким образом, s быстрый двойной щелчок максимизирует окно кода, и это очень полезно. Другие дважды щелкают, и у меня есть свои боковые панели назад.

я также нахожу это очень полезной ориентацией для моей электронной почты.

я рекомендую это высоко.

7
задан Peter Mortensen 28 March 2010 в 23:31
поделиться

4 ответа

Из документации TCMalloc :

Чтобы использовать TCmalloc, просто свяжите tcmalloc с вашим приложением с помощью флага компоновщика «-ltcmalloc». Вы можете использовать tcmalloc в приложениях, которые вы не компилировали самостоятельно, используя LD_PRELOAD:

$ LD_PRELOAD = "/ usr / lib / libtcmalloc.so"

ptmalloc похоже (но если вы работаете в Linux, вы, вероятно, уже используете его , потому что это часть библиотеки GNU C ).

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

2
ответ дан 7 December 2019 в 16:44
поделиться

Я думаю, что перебор определенно возможен. Вы можете просто связать свое приложение с новой библиотекой реализации, которую хотите, и все вызовы new, malloc будут отменены. Я этого не делал. Но я предполагаю, что это возможно, потому что при использовании valgrind он использует свои собственные распределители памяти для отслеживания статистики использования памяти приложением и в конечном итоге дает результат. Так что, если это возможно, определенно должен быть способ.

Проверьте эту ссылку . Он содержит информацию о подобной библиотеке smartheap!

0
ответ дан 7 December 2019 в 16:44
поделиться

Если ваша программа многопоточная, то распределитель Hoard очень полезен. рассматривается. Лично я не думаю, что в Linux стоит заморачиваться, поскольку ptmalloc в glibc уже довольно хорош.

1
ответ дан 7 December 2019 в 16:44
поделиться

Сколько времени ваше приложение тратит на выделение памяти?

0
ответ дан 7 December 2019 в 16:44
поделиться
Другие вопросы по тегам:

Похожие вопросы: