亚洲精品亚洲人成在线观看麻豆,在线欧美视频一区,亚洲国产精品一区二区动图,色综合久久丁香婷婷

              當(dāng)前位置:首頁 > IT技術(shù) > Web編程 > 正文

              php session 讀寫鎖
              2021-09-29 14:51:52

              php session 讀寫鎖

              • 想想一個(gè)例子,功能:
              1. 點(diǎn)擊頁面中一個(gè)按鈕,ajax執(zhí)行php,php中用session記錄執(zhí)行到哪一步。
              2. 使用ajax輪詢另一個(gè)php,獲取session中數(shù)據(jù),輸出執(zhí)行到哪一步。

              ?

              • 執(zhí)行時(shí)發(fā)現(xiàn),輪詢的結(jié)果: 并不是每一步返回,而是等待10秒后直接返回complete。

              當(dāng)執(zhí)行session_start()后,session會(huì)被鎖住。直到頁面執(zhí)行完成。

              因此在頁面執(zhí)行其間,對(duì)sesssion進(jìn)行寫操作,只會(huì)保存在內(nèi)存中,并不會(huì)寫入session文件。

              而對(duì)session進(jìn)行讀取,則需要等待,直到session鎖解開才能讀取到。

              ?

              • 解決方法

              我們可以使用session_write_close()把數(shù)據(jù)寫入session文件并結(jié)束session進(jìn)程。這樣就不需要等待頁面執(zhí)行完成,也能獲取到執(zhí)行到哪一步。

              但這樣有個(gè)問題,就是執(zhí)行完sesssion_write_close()后,對(duì)session的任何寫操作都不起作用。因?yàn)閟ession進(jìn)程已經(jīng)結(jié)束。

              因此需要再寫session時(shí),在前面加上session_start()

              ?

              • 備注:
              • session_start?— Start new or resume existing session?

                ?

              • session_write_close?— Write session data and end session?

              ?

              本文摘自 :https://www.cnblogs.com/

              開通會(huì)員,享受整站包年服務(wù)立即開通 >