ドラッグすると、ときどき(5回に1回)、瞬間的に(5〜10秒)「フリーズ」することがあります。おそらく-startcommand
コールバックの一部です。最初のドラッグでは発生しません。
コールバックは十分に単純です。ドラッグカーソルのテキストをドラッグされている値に設定するだけです。
sub DragStart {
my( $token ) = @_;
my $w = $token->parent;
my $e = $w->XEvent;
my $idx = $w->nearest( $e->y );
if( defined $idx ) {
$token->configure( -text -> $w->get( $idx );
my( $X, $Y ) = ( $e->x, $e->y );
$token->MoveToplevelWindow( $X, $Y );
$token->raise;
$token->deiconify;
$token->FindSite( $X, $Y, $e );
}
}
問題が私のコードの外にあるのかどうか疑問に思わずにはいられないので、フリーズが発生したときに現在呼び出されているサブルーチンを特定する方法を見つけたいと思います。
そのようなツールはありますか?リアルタイムのコールスタックがあれば、それを示すものがそれを行います。