我想要實現Singleton
,發現這個acrticle從MSDN
有幾個例子:我應該爲我的目的使用線程安全還是非線程安全的Singleton類?
http://msdn.microsoft.com/en-us/library/ff650316.aspx
我有應用程序主機WCF
服務。 應用程序從Client
獲得String
,並將此字符串發送到我的Singleton
。 從Singleton class
我打開我的Job
類做我的東西(打開過程..)。 作業類包含Event
,每次進程開始結束更新我的UI。 和Singleton class
應訂閱此事件。 另外我在我的應用程序啓動時打開新的Singleton
實例。
我的服務ServiceBehavior
定義爲ConcurrencyMode.Multiple
和InstanceContextMode.PerSession
所以每一個客戶端消息創建新實例:
[ServiceBehavior(
ConcurrencyMode = ConcurrencyMode.Multiple,
InstanceContextMode = InstanceContextMode.PerSession)]
所以我只qustion是shold我用我的Singleton class
線程安全還是非線程安全的?
爲什麼不使用一個線程安全的? – elyashiv
這個問題不是爲什麼不,但如果我需要它 – user2813889
使它線程安全,沒有任何缺點,使它線程安全,你可以避免未來頭痛。 –