首頁 > 后端開發 > php教程 > 正文

php多線程是什么意思

原創 2019-06-19 14:35:02 0 1297
第七期線上培訓班
PHP在默認的情況下是不支持多線程的,通過安裝pthreads擴展,讓其參數來指定編譯PHP的線程安全方式來使其支持多線程,但是使用的過程中要考慮到線程安全的問題。

線程是操作系統中進行運算調度的最小單位。它被包含在進程中,是進程中的實際運作單位。今天將要分享的是線程知識是有關于PHP的,具有一定的參考價值,希望對大家有所幫助

【推薦課程:PHP教程

多線程的理解

所謂多線程就是在在一個進程中可以并發多個線程,每條線程并行執行不同的任務。多線程大大提高了程序的執行效率,一個多線程比單線程被操作系統調度的概率更大。而且更高效。多個線程可以在多核CPU的多個核心同時運行,加快了運行效率。而且線程間的通信更加簡單。

PHP多線程

在默認情況下PHP是不支持多線程的,要使用多線程需要安裝 擴展,目前常用的擴展有pcnlt,POSIX ,pthreads,但是用的最多的還是pthreads擴展,它通過使用參數來指定來編譯PHP時的線程安全方式,使其支持多線程。

在使用線程之前首先要考慮到線程的安全問題,線程安全指的是某個函數或函數庫在多線程環境中被調用時,能夠正確的處理多線程之間的共享變量,使得程序的功能能夠正確完成

例:

在多線程中由于存在共享變量,很有可能會導致出現以下問題:

存在一個全局數組:$arr = array('a');
A 線程獲取數組長度為1;
B 線程獲取數組長度為1;
A 線程pop出數組元素 $a = array_pop($arr); $a = 'a';
B 線程也pop數組元素 $b = array_pop($arr); $a = null;
但是此時B線程內就出現了錯誤事件,雖設置了數組長度大于0,但是沒有 pop值來

PHP實現線程安全

PHP實現線程安全主要通過 TSRM 機制,通過此機制可以對全局變量和靜態變量進行隔離,并且給每個線程都復制了一份全局變量和靜態變量。各個線程使用的都是主線程的一個備份。這樣就避免了變量沖突,也不會發生線程安全的問題。

PHP 對多線程的封裝保證了線程安全,所以開發人員就不需要在考慮讀寫沖突的問題了,也使得代碼更加安全。不過這樣做也有不好的地方,例如當子線程開始運行時,主線程便再也無法對子線程運行細節進行調整了,失去了消息傳遞能力

總結:以上就是本篇文章的全部內容了,希望對大家有所幫助。

以上就是php多線程是什么意思的詳細內容,更多請關注php中文網其它相關文章!

php中文網最新課程二維碼
  • 相關標簽:php多線程
  • 本文原創發布php中文網 ,轉載請注明出處,感謝您的尊重!
  • 相關文章


  • php多線程實例詳解
  • php多線程的創建及使用
  • 使用pthreads實現真正的PHP多線程的方法
  • php多線程是什么意思
  • 網友評論

    文明上網理性發言,請遵守 新聞評論服務協議

    我要評論
    獨孤九賤(5)_ThinkPHP5視頻教程

    獨孤九賤(5)_ThinkPHP5視頻教程

    ThinkPHP是國內最流行的中文PHP開發框架,也是您Web項目的最佳選擇。《php.cn獨孤九賤(5)-ThinkPHP5視頻教程》課程以ThinkPHP5最新版本為例,從最基本的框架常識開始,將...

    獨孤九賤(4)_PHP視頻教程

    獨孤九賤(4)_PHP視頻教程

    江湖傳言:PHP是世界上最好的編程語言。真的是這樣嗎?這個梗究竟是從哪來的?學會本課程,你就會明白了。 PHP中文網出品的PHP入門系統教學視頻,完全從初學者的角度出發,絕不玩虛的,一切以實用、有用...

    獨孤九賤(1)_HTML5視頻教程

    獨孤九賤(1)_HTML5視頻教程

    《php.cn原創html5視頻教程》課程特色:php中文網原創幽默段子系列課程,以惡搞,段子為主題風格的php視頻教程!輕松的教學風格,簡短的教學模式,讓同學們在不知不覺中,學會了HTML知識。 ...

    ThinkPHP5實戰之[教學管理系統]

    ThinkPHP5實戰之[教學管理系統]

    本套教程,以一個真實的學校教學管理系統為案例,手把手教會您如何在一張白紙上,從零開始,一步一步的用ThinkPHP5框架快速開發出一個商業項目。

    PHP入門視頻教程之一周學會PHP

    PHP入門視頻教程之一周學會PHP

    所有計算機語言的學習都要從基礎開始,《PHP入門視頻教程之一周學會PHP》不僅是PHP的基礎部分更主要的是PHP語言的核心技術,是學習PHP必須掌握的內容,任何PHP項目的實現都離不開這部分的內容,通...

    作者信息

    相關視頻教程

  • PHP編程之道 PHP編程之道
  • PHP零基礎視頻教程 PHP零基礎視頻教程
  • PHP每日小知識(第二季) PHP每日小知識(第二季)
  • 相關視頻章節

    第七期線上培訓班 118期四肖中特唯一