為什麼php多執行緒沒人用

時間 2021-05-11 16:10:23

1樓:ZealReal

程序資源很昂貴,所以不會輕易使用多程序。至於執行緒,php支援的不好,php5後有個協程,php開發人員基本不會去使用,協程相當於使用使用者空間的執行緒(一般執行緒是系統空間),Swoole在非同步及協程方面做的不錯,開始會越來越多人使用,大大提高php的併發能力。

2樓:import 潘多拉

1,PHP是伺服器端指令碼語言,以web領域為主,基本就是增刪查改,沒有多執行緒處理需求。

2,個別人想用PHP做運維就會涉及到多執行緒,不過PHP做運維確實不太好用,Python也未必是最好選擇,Python的多執行緒也是會煩死人的。

3,工具是為了解決問題,我們是選擇工具,而不是選擇問題。

3樓:netkiller

我有用,很多場景,用於替代C,PHP很好開發,對開發人員要求不高,開發效率高。

例如場景:現有一套閉源軟體,我們要增強功能,它使用MySQL資料庫,首先我用C開發了乙個mysql 外掛程式,通過觸發器將資料變化實時發給 PHP的 Fork 守護程序。上線效果相當好,只用了幾個小時幹完活。

語言只是工具,滿足需求即可,沒有什麼好壞之分。

4樓:成都還好

php的多執行緒需要安裝thread擴充套件,相當於用c把常量和變數拷貝出乙份,然後複製給子執行緒,但是這樣執行緒之間通訊存在弱聯絡。然後需要切換zts模式(這樣本身就是對效能的一種消耗。)

這樣就對程式設計師水平要求比較高,而是實現起來比較複雜。

那我為什麼不用其他語言呢?

多執行緒有什麼用?

bjjiNight 這麼理解,比如一群人到樓頂要坐電梯,從樓下坐到樓上就是乙個程序,裡面的人就是執行緒 資源排程和執行 電梯上樓下樓的速度是不變的,但是要把所有的人帶到樓上,單核單執行緒就是一次只帶乙個人,單核多執行緒則是一次帶兩個或者多個人,電梯速度是不變的,但把所有人帶上樓頂的時間卻不一樣,電梯...

PHP不內建多執行緒程式設計支援,是為讓PHP容器 PHP FPM Apache 執行更加穩健,不懂求解釋?

執行緒更輕,更容易共享資源,比如開啟的檔案。執行緒容易處理不當互相影響。程序頁表都不一樣所以乙個掛了不容易影響另外的程序。但是資源共享比較麻煩。反對 Dean.Lee 對執行緒和程序的觀念。程序和執行緒的區別更多是在共享資源方面。在Linux 下,執行緒是共享頁表和檔案還有其他資源的。無論是執行緒還...

為什麼 MySQL 使用多執行緒,而 Oracle 和 PostgreSQL 使用多程序?

白鯨魚 程序 作業系統中分配資源的基本單位 執行緒 作業系統中排程資源的基本單位 協程 比執行緒更小的執行單元,自帶cpu上下文,乙個協程乙個棧就像方圓 和 哼哈二匠 所說早期unix沒有提供多執行緒,只有多程序。另外不同執行緒模型優劣 這裡不從歷史原因說僅僅從技術上講多執行緒與多程序有什麼什麼好處...