91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP支不支持多線程

發布時間:2020-11-04 14:51:21 來源:億速云 閱讀:267 作者:小新 欄目:編程語言

這篇文章主要介紹了PHP支不支持多線程,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

PHP 默認并不支持多線程,要使用多線程需要安裝 pthread 擴展,而要安裝 pthread 擴展,必須使用 --enable-maintainer-zts 參數重新編譯 PHP,這個參數是指定編譯 PHP 時使用線程安全方式。

PHP 實現

PHP 實現的線程安全主要是使用 TSRM 機制對 全局變量和靜態變量進行了隔離,將全局變量和靜態變量 給每個線程都復制了一份,各線程使用的都是主線程的一個備份,從而避免了變量沖突,也就不會出現線程安全問題。

PHP 對多線程的封裝保證了線程安全,程序員不用考慮對全局變量加各種鎖來避免讀寫沖突了,同時也減少了出錯的機會,寫出的代碼更加安全。

同時 PHP 開啟線程安全選項后,使用 TSRM 機制分配和使用變量時也會有額外的損耗,所以在不需要多線程的 PHP 環境中,使用 PHP 的 ZTS (非線程安全) 版本就好。

類和方法

PHP 將線程 封裝成了 Thread 類,線程的創建通過實例化一個線程對象來實現,由于類的封裝性,變量的使用只能通過構造函數傳入,而線程運算結果也需要通過類變量傳出。

實例代碼:

下面是一個線程類,用來請求某一接口。接下來根據它寫兩個多線程的應用實例:

class Request extends Thread {
    public $url;
    public $response;
    public function __construct($url) {
    $this->url = $url;
    }
    public function run() {
    $this->response = file_get_contents($this->url);
    }
}

感謝你能夠認真閱讀完這篇文章,希望小編分享PHP支不支持多線程內容對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

法库县| 邵阳县| 新巴尔虎右旗| 抚州市| 西畴县| 库车县| 抚远县| 华安县| 襄垣县| 青神县| 河南省| 竹北市| 嘉禾县| 交城县| 洪江市| 丹巴县| 绥德县| 鄂托克前旗| 江孜县| 手机| 运城市| 长宁县| 区。| 张家口市| 来安县| 青州市| 饶河县| 句容市| 林州市| 莆田市| 赤城县| 图们市| 鄂尔多斯市| 斗六市| 武鸣县| 明水县| 长子县| 南丹县| 林甸县| 宣恩县| 云林县|