0

共有メモリを使用して他のプロセスと共有するには、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」を宣言するのを忘れましたか?)。

4

1 に答える 1