ObjectDisposedException クラス

破棄されたオブジェクトで操作が実行されるとスローされる例外。

この型のすべてのメンバの一覧については、ObjectDisposedException メンバ を参照してください。

System.Object
   System.Exception
      System.SystemException
         System.InvalidOperationException
            System.ObjectDisposedException

<Serializable>
Public Class ObjectDisposedException   Inherits InvalidOperationException
[C#]
[Serializable]
public class ObjectDisposedException : InvalidOperationException
[C++]
[Serializable]
public __gc class ObjectDisposedException : public   InvalidOperationException
[JScript]
public
   Serializable
class ObjectDisposedException extends   InvalidOperationException

スレッドセーフ

この型の public static (Visual Basicでは Shared) のすべてのメンバは、マルチスレッド操作で安全に使用できます。インスタンスのメンバの場合は、スレッドセーフであるとは限りません。

使用例

[Visual Basic, C#, C++] ObjectDisposedException 例外がスローされる原因となるエラーの例を次に示します。

 
Imports System
Imports System.IO

Public Class ObjectDisposedExceptionTest
   
   Public Shared Sub Main()
      Dim ms As New MemoryStream(16)
      ms.Close()
      Try
         ms.ReadByte()
      Catch e As ObjectDisposedException
         Console.WriteLine("Caught: {0}", e.Message)
      End Try
   End Sub 'Main
End Class 'ObjectDisposedExceptionTest

[C#] 
using System;
using System.IO;

public class ObjectDisposedExceptionTest 
{
   public static void Main()
   {     
      MemoryStream ms = new MemoryStream(16);
      ms.Close();
      try 
      {
         ms.ReadByte();
      } 
      catch (ObjectDisposedException e) 
      {
         Console.WriteLine("Caught: {0}", e.Message);
      }
   }
}

[C++] 
#using <mscorlib.dll>

using namespace System;
using namespace System::IO;

int main() {     
    MemoryStream* ms = new MemoryStream(16);
    ms->Close();
    try {
        ms->ReadByte();
    } catch (ObjectDisposedException* e) {
        Console::WriteLine(S"Caught: {0}", e->Message);
    }
}

[Visual Basic, C#, C++] このコードによって、次の出力が生成されます。

[Visual Basic, C#, C++] Caught: Cannot access a closed Stream.

[JScript] JScript のサンプルはありません。Visual Basic、C#、および C++ のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

必要条件

名前空間: System

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ, .NET Compact Framework - Windows CE .NET

アセンブリ: Mscorlib (Mscorlib.dll 内)

参照

ObjectDisposedException メンバ | System 名前空間 | IDisposable