オブジェクト(フォーム)をMemoryStream
シリアル化し、最終的に逆シリアル化できるようにしたい。
アプリケーションの実行中にグローバルな「memoryStreamContainer」を保持 (読み取りと書き込み) することは可能ですか?
オブジェクト(フォーム)をMemoryStream
シリアル化し、最終的に逆シリアル化できるようにしたい。
アプリケーションの実行中にグローバルな「memoryStreamContainer」を保持 (読み取りと書き込み) することは可能ですか?
はい、できますが、 はスレッドセーフではないことに注意してくださいMemoryStream
。たとえば、lock ステートメントを使用して、アクセスをシリアル化する必要があります。
任意のタイプを使用できる、ある種のトレッドセーフラッパーを作成することもできますStream
:
public sealed class ThreadSafeStreamWrapper
{
private readonly Stream wrappedStream;
public ThreadSafeStreamWrapper(Stream wrappedStream)
{
this.wrappedStream = wrappedStream;
}
// implementation
}