我有幾個大序列化的對象圖,其中一些需要一些時間去反序列化。帶反序列化的C#ProgressBar()
在這個階段,我很滿意我的小小的「Please Wait ...」框,它出現然後在完成時消失,但我只是想着在活動中有某種進度條的想法反序列化開始花費更長的時間。
似乎沒有任何方法可以獲得BinaryFormatter
對象的內置Deserialize()
方法的進度。我懷疑是否包含了這樣的功能,會有某種異步回調,只要從流中讀取一個字節塊就會進行輪詢。
有沒有人看到過使用對象序列化/反序列化的ProgressBar類行爲的實現?
對於任何感興趣的人:我昨天實施了這個,對結果很滿意。反序列化發生在一個單獨的線程中,並且我假脫機一個額外的進度條線程監視流位置/流的長度並更新進度條。它工作得很好,並且給出了反序列化進度的相當好的近似值! – Ozzah 2011-05-27 04:13:55