我有一個WCF服務,在代碼中使用並生成爲ChannelFactory類。我知道使用WCF的正確方法是創建ChannelFactory(讓我們稱之爲AwesomeClient),完成工作,然後調用Close()。 這裏是我的片斷:WCF:不關閉ChannelFactory與不斷重新創建ChannelFactory並關閉ChannelFactory的比較
public static void DoSomething()
{
var client = new AwesomeClient();
client.DoSomethingAwesome();
client.Close();
}
不過,我期待那DoSomething的會相當頻繁地調用(比如10次一分鐘?),所以我得到的建議是實例化的ChannelFactory作爲靜態實例,總是重用相同的實例,並且永遠不必關閉它(因爲這比'總是重新創建ChannelFactory並關閉它'更便宜')。
我在這裏的第二意見,任何人都可以告訴我爲什麼不調用關閉和重用靜態實例是一個好主意?或者我應該堅持重新創建ChannelFactory並關閉() - 每次調用它?
我決定打開和關閉每個通話的新頻道。感謝指針。 – Klaw 2010-06-19 15:35:35