タグ

Cとperlに関するyokochieのブックマーク (4)

  • Perlのメモリリークを見つける方法 - Islands in the byte stream (legacy)

    Perlではメモリリーク検出ツールがいくつか開発されているので、top(1)の結果を眺めるよりそういうツールを使うほうが楽である。 さて、メモリリークが発生しているとき、その可能性としてはだいたい以下の4つが挙げられる。 Perlレベルでの循環参照 グローバル変数に値をどんどん足しているとき*1 XSレベルでリファレンスカウントの管理ミス XSレベルでmalloc()したメモリの管理ミス この1-3についてはすべてPerlインタプリタ内の出来事であり、Test::LeakTraceを使って検出できる。4を検出するのは難しいが、Test::Valgrindが役に立つ。 Test::LeakTraceのSYNOPSISは歴史的経緯によりごちゃごちゃしているが、テストで使うべき関数はno_leaks_ok()とleaks_cmp_ok()だけである。 たとえば、以下のようにして使う*2。 #!p

    Perlのメモリリークを見つける方法 - Islands in the byte stream (legacy)
  • Perlの中をgdbで覗く | BLOG - DeNA Engineering

    こんにちは。DeNAの樋口です。 Perlで書かれたアプリを動かしているときに、Perlのプロセスが今コードの何処を実行中なのか知りたいことがよくあります。そのような場合には、gdbで実行中のプロセスにアタッチし、Perlインタプリタインスタンスの内部を覗くことによって調べることができます。また同様の方法で、プロセスのコアダンプを取り、後でじっくりデバッガで調べることも可能です。 デバッグシンボル付きのPerlを用意する まず前提として、Perlの実行形式にデバッグシンボルが付いている必要があります。無い場合でも不可能ではありませんが、現実的には難しいでしょう。デバッグシンボル付きのPerlを用意する方法はOSによりますが、例えばrpmを使っているGNU/Linuxディストリビューションであればperl-debuginfoのように分離されたパッケージにデバッグシンボルが入っていることが多い

    Perlの中をgdbで覗く | BLOG - DeNA Engineering
  • Perlゼミ(サンプルコードPerl入門)

    Perl入学式 全6回のPerl入門講座。東京、大阪、沖縄、札幌で開催。(東京は4月と10月スタート、それ以外は5月スタート) YAPC::Japan Perlを軸としたITに関わる全ての人のためのカンファレンス。 東京 吉祥寺.pm 五反田.pm 大阪 なにわPerl 沖縄 沖縄.pm

  • 「CもPerlも」自動で必要なプラグインを集めるEclipseプラグイン「Tikal」:CodeZine

    「Tikal」は、EclipseでCやPerlの開発を行う際に必要となるプラグインを、自動的に集めてくれるプラグインだ。無償で入手することができる。 EclipseはJava以外の言語でもプラグインを導入することで開発環境を構築することができるが、必要となるプラグインを集めるのは一苦労だ。Tikalは必要となるプラグインをまとめて提示してくれるうえ、プラグインがアップデートした際には更新通知もしてくれる。対応言語はJava、J2EE、C/C++PerlPHPPython。 導入するためには、Eclipseアップデート機能に以下のURLを追加する。 http://network.tikalk.com/snapshot/updatesites/com.tikal.eclipse.distro.updatesite/ 1.プラグインのインストール 自動アップデートを実行すると、各

  • 1