首頁  >  文章  >  後端開發  >  php多執行緒與多行程的作用

php多執行緒與多行程的作用

(*-*)浩
(*-*)浩原創
2019-09-03 14:39:033923瀏覽

php多執行緒與多行程的作用

多進程(推薦學習:PHP視訊教學

使用多進程, 子進程結束以後, 內核會負責回收資源

使用多進程,子進程異常退出不會導致整個進程Thread退出,父進程還有機會重建流程。

一個常駐主進程, 只負責任務分發, 邏輯更清楚.

多進程方式更加穩定,另外利用進程間通訊(IPC)也可以實現資料共享。

共享內存,這種方式和線程間讀寫變數是一樣的,需要加鎖,會有同步、死鎖問題。

訊息佇列,可以採用多個子程序搶佇列模式,效能很好

多執行緒

執行緒是在同一個行程內的,可以共享記憶體變數實現執行緒間通訊

#執行緒比進程更輕量級,開很多行程會比執行緒消耗更多系統資源

多執行緒也存在一些問題:

執行緒讀寫變數有同步問題,需要加鎖

鎖的粒度過大存在效能問題,可能會導致只有1個執行緒在運行,其他執行緒都在等待鎖定

#同時使用多個鎖,邏輯複雜,一旦某個鎖沒被正確釋放,可能會發生線程死鎖

某個執行緒發生致命錯誤會導致整個進程崩潰

以上是php多執行緒與多行程的作用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
上一篇:php路由原理下一篇:php路由原理