[Perl] Segmentation faultをSIGNALでトラップしようとしたら失敗した

でござる。

Test Program

#!/usr/bin/perl

use Carp;

my $a = sub {
print STDERR Carp::longmess("SIG SEGV");
};

foreach (qw(INT TRAP ABRT BUS KILL SEGV ALRM TERM)) {
$SIG{$_} = $a;
}

{
use Text::ParseWords;
my $str = 'a' x 100000;
my @array = quotewords( " ", 0, $str );
}


結果

# perl a.pl
Segmentation fault

→いっぱいSIGを設定してみたけれど、トラップできてないやんorz
 killコマンドで送ったときはトラップできるのにさ。。。


補足
・segmentation-faultさせている方法について 
 http://isoya9.blogspot.com/2009/04/perl-segmentation-fault_18.html

ブログ気持玉

クリックして気持ちを伝えよう!

ログインしてクリックすれば、自分のブログへのリンクが付きます。

→ログインへ

なるほど(納得、参考になった、ヘー)
驚いた
面白い
ナイス
ガッツ(がんばれ!)
かわいい

気持玉数 : 0

この記事へのコメント

この記事へのトラックバック