首頁  >  文章  >  後端開發  >  php如何實現加鎖解鎖?

php如何實現加鎖解鎖?

coldplay.xixi
coldplay.xixi原創
2020-07-22 13:49:124089瀏覽

php實作加鎖解鎖的方法:1.利用MySQL的鎖定機制來實現互斥;2、利用檔案鎖定機制;3、利用共享記憶體空間計數。

php如何實現加鎖解鎖?

php實作加鎖解鎖的方法:

1、利用MySQL的鎖定機制來實現互斥。缺點是增大了資料庫伺服器的連線負擔,並且使得程式依賴資料庫服務才能正常運作。

2、利用檔案鎖定機制。 也就是利用flock函數透過檔案實現鎖定和互斥機制,來模擬通用程式設計模型下的鎖定原語的工作方式。這種方式

在以前以純文字檔案為儲存引擎的時代成為保護 資料完整性的必備元素,現在在使用文字檔案作為快取媒介的場合也相當常見。

PmWiki應該也是使用了這個機制來提醒多人同時編輯一個頁面的情形。不過檔案鎖定機制多少會呼叫到宿主作業系統上的檔案

鎖定特性,因此在使用時一定要檢查伺服器作業系統是否為PHP環境提供了完善可靠的檔案鎖定機制。

3、利用共享記憶體空間計數。 PHP可以利用shmop_open函數開闢一塊記憶體空間,在服務進程之間共享數據,為了保證共享資料的互

斥安全訪問,可以使用sem_getsem_acquiresem_release這組函數實作共享計數鎖定機制。這種辦法在後台實際上是呼叫了系統

的ipc 服務來實作。

相關學習推薦:PHP程式設計從入門到精通

#

以上是php如何實現加鎖解鎖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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