c++ - jemalloc 怎么自动替换掉项目中已使用的malloc和new?
伊谢尔伦
伊谢尔伦 2017-04-17 15:03:28
0
1
2504

请教一下
在windows下使用jemalloc,看了下测试例子,是调用je_mallocje_free操作的
但是项目中已经有了很多malloc和new

必须自己去处理new以及stl::allocator替换成je_malloc么?
还是有类似tcmalloc一样比较方便的使用方法?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全員に返信(1)
黄舟

Windows でこれをどのように使用するかわかりませんし、VS についても詳しくありませんが、原則は適用されるはずです。
まだ gcc/mingw を使用している場合は、最初に jemalloc ライブラリを直接リンクしてから、jemalloc を使用した実装でグローバルに置き換えることができます。
以下は例です:
cc app.c -o app -L${JEMALLOC_PATH}/lib -Wl,-rpath,${JEMALLOC_PATH}/lib -ljemalloc
ドキュメントより:
https://github.com/jemalloc/j...
Linux では、コンパイルされた jemalloc ライブラリ パスを LD_LIBRARY_PATH に直接追加することもできます

これは、接続中の依存関係注入の一般的な使用法です。
元の malloc 関数がどこから来たのか、そしてそれが現在のプログラムにどのように接続されているのか答えてみてください。

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート