Php ZF2:pthreads-传递PDO
这是我第一次使用pthreads 我有一个运行多线程的控制器。每个线程将进行大量处理,并等待文件下载。稍后,它将保存到数据库中 在前面的控制器中,我使用以下方法获取数据库连接的实例:Php ZF2:pthreads-传递PDO,php,multithreading,pdo,Php,Multithreading,Pdo,这是我第一次使用pthreads 我有一个运行多线程的控制器。每个线程将进行大量处理,并等待文件下载。稍后,它将保存到数据库中 在前面的控制器中,我使用以下方法获取数据库连接的实例: public function getAppTable() { if (!$this->appTable) { $sm = $this->getServiceLocator(); $this->appTable = $sm->g
public function getAppTable() {
if (!$this->appTable) {
$sm = $this->getServiceLocator();
$this->appTable = $sm->get('AppTable');
}
return $this->appTable;
}
但是,如果我尝试在我的线程
扩展类中执行此操作,我将得到getServiceLocator
未定义,因为该类未扩展控制器。我无法将$this->appTable
传递给线程,因为无法序列化或取消序列化PDO
我怎样才能让它工作?我怀疑这是可能的。您可以尝试使用从
Threaded
扩展PDO
,但我想它会崩溃。您最好的选择可能是每个线程建立一个连接。并且可能用于保持低开销。我怀疑这是可能的。您可以尝试使用从Threaded
扩展PDO
,但我想它会崩溃。您最好的选择可能是为每个线程建立一个连接,并且可能使用它来保持较低的开销。