При попытке использовать DBI в потоках получаю ошибку:thread failed to start: DBD::Sybase::db do failed: handle 2 is owned by thread 814c008 not current thread 845e040 (handles can't be shared between threads and your driver may need a CLONE method added)
Код:
use DBI;
use threads;
sub ms_do
{
local @par=@_;
$par[0]->do($par[1]);
}
my $mdbh=DBI->connect("dbi:Sybase:server=$server", $login, $pass);
my @thr;
push @thr, threads->create(\&ms_do,$mdbh,"delete from $database.$table1");
push @thr, threads->create(\&ms_do,$mdbh,"delete from $database.$table2");
foreach my $thread (@thr)
{
$thread->join();
}
Соответственно вопрос: Что я делаю не верно? И есть ли возможность использовать многопоточность с DBI в perl?