台灣最大程式設計社群網站
線上人數
615
 
會員總數:246038
討論主題:189624
歡迎您免費加入會員
討論區列表 >> ASP.NET >> 靜態變數的小小問題
[]  
[我要回覆]
1
回應主題 加入我的關注話題 檢舉此篇討論 將提問者加入個人黑名單
靜態變數的小小問題
價值 : 10 QP  點閱數:718 回應數:7
樓主

Wind
門外漢
0 89
1172 146
發送站內信

各位大大,有一個小小的問題跟想法,在一個網站中,有一些常常會用到的一些設定,
我有用過cache,applocation.....等等方式,想請問一下
靜態變數是系統一起來,就存在的變數,假使說,我有一個 a = 1
這個靜態變數,只讀取,不做任何改變的前題下,有沒有一種可能
就是靜態變數會遺失之類的狀況?就是讀取不到之類的呢?


搜尋相關Tags的文章: [ 靜態變數 ] ,
本篇文章發表於2017-09-23 10:12
1樓
最有價值解答

小魚
檢舉此回應
如果你有給它預設值,
靜態變數應該是不會讀取不到,
不過聽說靜態變數是所有人共用的,
這邊最好放不會變化的東西,
也不要放專屬個人的東西,
因為每個人看到的都一樣。
本篇文章回覆於2017-09-23 10:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
2樓
回應

風箏
檢舉此回應
集區被回收了就會被重置
本篇文章回覆於2017-09-25 16:45
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
3樓
不錯的參考

MIS2000 Lab
檢舉此回應
Q : "靜態變數是系統一起來,就存在的變數,假使說,我有一個 a = 1
這個靜態變數,只讀取,不做任何改變的前題下"

像您說的,用Application來做
寫在 Global.asax裡面,有一個 Application_Start
應該可以做到您說的 "系統一起來,就存在"

如果不會異動這個數值的話,系統、網站重啟,應該都不會影響到
本篇文章回覆於2017-09-26 08:59
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
4樓
作者回應

Wind
檢舉此回應
我的想法比像各位說的,寫一個類別,在applocaion_start啟動,
而這個類別所做的事情,是將a從資料庫裡拿出來使用。

而唯一有可能會變動到a這個值的地方,也是只有一個人能使用,
而變更的流程呢,就是使用者在頁面中,設定a的值,而我直接將a的值變更為使用者所設定的值,然後直接使用。
變更完,才將a的值回存到資料庫中。

整個流程,理論上就像大家說的,不太會變,只是一直在想,會不會有什麼要的狀況,會造成
靜態變數的值取不出來的。

也想問一下各位大大,有沒有這樣用過呢?或有沒有什麼特別的情況出現?
本篇文章回覆於2017-09-26 23:20
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
5樓
回應

小魚
檢舉此回應
MIS2000大大已經說了,
靜態變數是系統一起來,就存在的變數,
所以不會有讀不到的問題,
而且你既然是要讓全部的人都能看到這個變數,
基本上應該是沒問題。
本篇文章回覆於2017-09-27 08:07
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
6樓
回應

MIS2000 Lab
檢舉此回應
Q : 也想問一下各位大大,有沒有這樣用過呢?或有沒有什麼特別的情況出現?

請問一下,您動手試過了嗎?
發現什麼問題,要跟大家繼續討論嗎?

還是「我們需保證沒問題,您才要試試看呢?」 :-P
本篇文章回覆於2017-09-27 08:23
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
7樓
作者回應

Wind
檢舉此回應
MIS大大,我目前是已經在幾個網站上這樣使用過,如同各位大大所說,
沒有什麼問題,只是在想,會不會有什麼我沒有考慮到,或我不知道的地方
所以才來問的喲~~~~
本篇文章回覆於2017-09-27 20:17
== 簽名檔 ==
--未登入的會員無法查看對方簽名檔--
   
1

回覆
如要回應,請先登入.