idisposable

    2熱度

    1回答

    我有一個輔助類,其中有一個方法設置爲接收信息以創建一個HttpWebRequest。目前的方法返回HttpWebResponse。 HttpWebResponse httpResponse; //make request here httpResponse = (HttpWebResponse)httpReq.GetResponse(); return httpResponse; 現在因

    1熱度

    2回答

    我的問題是特定於,爲什麼和不在哪裏實現IDisposable接口。 如果我不使用&消耗任何非託管資源,仍然是實施IDisposable接口的良好做法。 如果我這樣做有什麼優點或缺點?還是實施它的好習慣? 請指教。

    3熱度

    2回答

    考慮到IDisposable的語義,Dispose應該做些什麼,除了清理資源? 我看到許多類使用Dispose方法啓動關閉進程和其他一些東西,而不僅僅是「資源清理」工作。例如,如果你在類中有一個線程,需要關閉,你會期望調用Dispose正常關閉這個線程?我想在這個對象上實現一個Stop/Shutdown方法,並在那裏正常關閉線程,而在Dispose中,我將檢查線程是否還活着,以便簡單地調用Abor

    6熱度

    4回答

    我正在使用ASP.Net MVC 4,EF和Unity的DI。也使用UnitOfWork模式。試圖找出實現這一點的最佳方式。我有如下的代碼。 我遇到的問題是Dispose()在業務和存儲庫層現在不會被調用,只有在兩個析構函數被調用,所以對象似乎永遠不會被處置。 請回答下列 我真的需要在業務了IDisposable執行和庫層(如果統一已經照顧吧))稱爲 我應該怎麼做才能得到的Dispose( (我應

    2熱度

    4回答

    在我的公司,我看到這樣的代碼 using (LoggerFactory.GetTracer(_log.ModuleName + "._GetAccessTokenFromWns")) {...} 當我擡起頭來,我才知道其配置的由「使用」括號內聲明的變量引用的對象。 它是否也有助於像上面這樣的代碼,其中沒有引用工廠返回的對象的變量? 感謝,對象的

    7熱度

    2回答

    在我寫的軟件中,我將從外部設備(通過USB連接)讀取一些數據。我得到的驅動程序(dll文件)不是線程安全的,一次只能使用一個實例。我必須在C#中爲這些驅動程序編寫一個封裝器。既然我有一個多線程應用程序,我想,以確保:(?可能是包裝是一個單身) 始終只使用一個實例 其可設置的以釋放驅動程序和那裏的資源(IDisposable?) 從Disposable Singleton我可以看到意見是分開的,si

    0熱度

    1回答

    我有一個無限循環用於消耗來自BlockingCollection的項目。 public class MessageFileLogger { private BlockingCollection<ILogItem> _messageQueue; private Thread _worker; private bool _enabled = false; pu

    0熱度

    1回答

    我可以有一個擁有資源成員的類,或者至少它實現了IDisposable。這裏是一個例子(只是用於示出我的意思): public class Something { private HMACSHA1 HmacSha1; public Something() { HmacSha1 = new HMACSHA1(); } public b

    1熱度

    5回答

    考慮我們正在使用一些非託管資源。 最常見的方法是: //With IDisposable using (MemoryStream memoryStream = new MemoryStream()) { //Operate with memory stream } 但是我們不能寫以下? //With destructor called at the end of a block

    1熱度

    3回答

    我有一堆WindowsImpersonationContext對象,它們是IDisposable類型。現在考慮這兩個操作: Stack<WindowsImpersonationContext> stack = new Stack<WindowsImpersonationContext>(); public void BeginOperation() { // Push object