コマンドファイルを読み取り、必要に応じて再起動する Perl スクリプトがあります。
myscript.pl:
exec '/home/foo/bin/myscript.pl';
exit(0);
これで、1 つの問題を除いて問題なく動作します。コマンド ファイルを読み取るスレッドは、私が使用する DBI ハンドルにアクセスできません。そして、何度も再起動すると、恐ろしい「接続が多すぎます」というエラーが発生するまで、開いているmysql接続の数が増えているようです。DBI仕様は次のように述べています:
「この(おそらく一時的な)制限のため、新しく作成されたスレッドはデータベースへの独自の接続を確立する必要があります。ハンドルはスレッド間で共有できません。」
接続を閉じる方法、またはスクリプトを再起動する別の方法はありますか?