2010-04-09 74 views
2

我想序列化一个对象(Form)到MemoryStream,并且能够反序列化它。全局访问MemoryStream

应用程序运行时是否可以保留(读取和写入)全局“memoryStreamContainer”?

回答

1

是的,你可以,但请注意,MemoryStream不是线程安全的,所以你需要序列化访问它,例如,通过使用锁定语句。

甚至可以写某种胎面安全包装的,能够使用任何类型的Stream

public sealed class ThreadSafeStreamWrapper 
{ 
    private readonly Stream wrappedStream; 
    public ThreadSafeStreamWrapper(Stream wrappedStream) 
    { 
     this.wrappedStream = wrappedStream; 
    } 

    // implementation 
} 
+0

我同意我的问题应该是“我如何” :) – serhio 2010-04-09 13:50:04