0
我的應用程序正在泄漏頻道。特別是有些頻道沒有正確關閉,但我找不到位置。在某個時候,我的應用程序掛起,因爲沒有通道可以打開。如何獲取WCF中的所有開放頻道
是否有某種方法來獲取servicemodel中的所有開放通道,所以我回溯了這個問題?
我的應用程序正在泄漏頻道。特別是有些頻道沒有正確關閉,但我找不到位置。在某個時候,我的應用程序掛起,因爲沒有通道可以打開。如何獲取WCF中的所有開放頻道
是否有某種方法來獲取servicemodel中的所有開放通道,所以我回溯了這個問題?
如果你不是已經在做類似的事情,確保你重用你的服務/回收在基類exising通道,像這樣的代碼:
Protected ReadOnly Property MyService() As MyServiceClient
Get
' Initialise My Service and return it
If m_objMyService Is Nothing OrElse m_objMyService.State = CommunicationState.Closed OrElse m_objMyService.State = CommunicationState.Faulted Then
m_objMyService = MethodToGetServiceClient(Of MyServiceClient, MyService)()
End If
Return m_objMyService
End Get
End Property
並且確保在您不再需要它們時關閉並處理通道代理 – 2009-06-04 13:35:13
在服務器或客戶端?如果服務器:你自己託管,還是託管在IIS/WAS中?可能會使用哪些協議?您需要提供更多信息,請..... – 2009-06-04 13:24:08