在 Ubuntu 中,PHP 可以通過使用多線程擴展來實現多線程處理。一個流行的擴展是 pthreads
。以下是如何在 Ubuntu 中安裝和使用 pthreads
的步驟:
sudo apt-get update
sudo apt-get install php-dev php-pear build-essential
sudo pecl install pthreads
php.ini
文件中啟用 pthreads 擴展。找到 php.ini
文件(通常位于 /etc/php/{php_version}/cli/php.ini
或 /etc/php/{php_version}/fpm/php.ini
),然后在文件末尾添加以下行:extension=pthreads.so
sudo service php{php_version}-fpm restart
對于 Apache Web 服務器,請使用:
sudo service apache2 restart
test_threads.php
的文件,其中包含以下內容:<?php
class MyThread extends Thread {
public function run() {
echo 'Hello from thread!' . PHP_EOL;
}
}
$thread = new MyThread();
$thread->start();
$thread->join();
php test_threads.php
如果一切正常,您應該看到輸出 “Hello from thread!”。
請注意,pthreads
僅適用于 CLI 版本的 PHP,并且不支持 Web 服務器環境。此外,pthreads
需要使用 ZTS(Zend Thread Safety)版本的 PHP。在編譯 PHP 時,需要啟用 --enable-maintainer-zts
選項。如果您使用的是預編譯的 PHP 包,可能需要從源代碼編譯 PHP 以獲得 ZTS 支持。