共有メモリを使用して他のプロセスと共有するには、DBI 接続オブジェクトを使用して 1 つの配列をシリアル化する必要があります。しかし、逆シリアル化は機能しません。
保存可能な qw/freeze thaw/ を使用します。
my @connections;
for(my $c = 0;$c < 5;$c++) {
my $conn = DBI->connect($dsn,$user,$password,{'AutoCommit' => 1, 'RaiseError' => 1, 'PrintError' => 0});
push(@connections,$conn);
}
my $shm = freeze(@connections);
my $obj = thaw($shm);
リターン エラー: グローバル シンボル
「$drh」には、(eval 33) 行 6 で明示的なパッケージ名が必要です (「my $drh」を宣言するのを忘れましたか?)。