国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

關(guān)于用戶自己的私有變量問題

一條材

我現(xiàn)在使用了beforeAction和afterAction,然后我在自己寫的某個方法里定義了一個變量,想要在afterAction里使用,如果我直接使用$this->val = xxx這樣,那么所有這個線程的用戶都共用這個變量了吧?我要如何定義某個用戶自己的變量并在afterAction里使用呢?難道只能使用session?多幾個變量感覺就是session濫用了

1282 1 1
1個回答

2548a

每個進(jìn)程是獨立的,每個進(jìn)程當(dāng)前只會處理一個人的,所以你的這個:那么所有這個線程的用戶都共用這個變量了吧 是不成立的.webman現(xiàn)在是多進(jìn)程阻塞模式,不是異步非阻塞模式
通俗點說,一個進(jìn)程相當(dāng)于一個門,所有人都在門口排隊,大家必須等第一個進(jìn)去,出來,緊跟著門口的第二個人才能進(jìn)去.所以,只要你在beforeAction重置了值,不存在說第一個定義了變量,會被第二個人用到因為他們不是同時執(zhí)行的,而是順序執(zhí)行的.

  • 一條材 2022-06-01

    但是你忘記了一點,controller是駐留在內(nèi)存的,$this->val的值也會被留下來了,我也測試了,a用戶設(shè)置了一個變量,然后b用戶未設(shè)置這個變量,但是b用戶進(jìn)去打印出來的是a用戶設(shè)置的變量值

  • 一條材 2022-06-01

    哦,你是說在beforeAction里重置這個值,這樣應(yīng)該是可以的

  • 一條材 2022-06-01

    非常感謝,我想通了

  • liziyu 2022-06-01

    咋感覺你沒真想通呢!~ ^_^

  • 魯達(dá) 2022-06-02

    可以保存到請求屬性中,request()->val = xxx; 這樣每次請求完都會回收request對象,用戶之間互不影響

  • 一條材 2022-06-02

    放到request()里的方法也不錯

年代過于久遠(yuǎn),無法發(fā)表回答
??