次の方法で共有


ArrayList.Synchronized メソッド

同期されている (スレッド セーフな) リスト ラッパーを返します。

オーバーロードの一覧

同期されている (スレッド セーフな) ArrayList ラッパーを返します。

.NET Compact Framework でもサポート。

[Visual Basic] Overloads Public Shared Function Synchronized(ArrayList) As ArrayList

[C#] public static ArrayList Synchronized(ArrayList);

[C++] public: static ArrayList* Synchronized(ArrayList*);

[JScript] public static function Synchronized(ArrayList) : ArrayList;

同期されている (スレッド セーフな) IList ラッパーを返します。

[Visual Basic] Overloads Public Shared Function Synchronized(IList) As IList

[C#] public static IList Synchronized(IList);

[C++] public: static IList* Synchronized(IList*);

[JScript] public static function Synchronized(IList) : IList;

使用例

ArrayList を同期する方法と、 ArrayList が同期されているかどうかを確認し、同期済みの ArrayList を使用する方法の例を次に示します。

 
Imports System
Imports System.Collections

Public Class SamplesArrayList
    
    
    Public Shared Sub Main()
        
        ' Creates and initializes a new ArrayList.
        Dim myAL As New ArrayList()
        myAL.Add("The")
        myAL.Add("quick")
        myAL.Add("brown")
        myAL.Add("fox")
        
        ' Creates a synchronized wrapper around the ArrayList.
        Dim mySyncdAL As ArrayList = ArrayList.Synchronized(myAL)
        
        ' Displays the sychronization status of both ArrayLists.
        Dim str As String
        If myAL.IsSynchronized Then
            str = "synchronized"
        Else
            str = "not synchronized"
        End If
        Console.WriteLine("myAL is {0}.", str)
        If mySyncdAL.IsSynchronized Then
            str = "synchronized"
        Else
            str = "not synchronized"
        End If
        Console.WriteLine("mySyncdAL is {0}.", str)
    End Sub
End Class

' This code produces the following output.
' 
' myAL is not synchronized.
' mySyncdAL is synchronized. 

[C#] 
using System;
using System.Collections;
public class SamplesArrayList  {

   public static void Main()  {

      // Creates and initializes a new ArrayList.
      ArrayList myAL = new ArrayList();
      myAL.Add( "The" );
      myAL.Add( "quick" );
      myAL.Add( "brown" );
      myAL.Add( "fox" );

      // Creates a synchronized wrapper around the ArrayList.
      ArrayList mySyncdAL = ArrayList.Synchronized( myAL );

      // Displays the sychronization status of both ArrayLists.
      Console.WriteLine( "myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized" );
      Console.WriteLine( "mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized" );
   }
}
/* 
This code produces the following output.

myAL is not synchronized.
mySyncdAL is synchronized.
*/ 

[C++] 
#using <mscorlib.dll>
using namespace System;
using namespace System::Collections;


int main()  {
 
       // Creates and initializes a new ArrayList instance.
       ArrayList* myAL = new ArrayList();
       myAL->Add( S"The" );
       myAL->Add( S"quick" );
       myAL->Add( S"brown" );
       myAL->Add( S"fox" );
 
       // Creates a synchronized wrapper around the ArrayList.
       ArrayList* mySyncdAL = ArrayList::Synchronized( myAL );
 
       // Displays the sychronization status of both ArrayLists.
       String* szRes = myAL->IsSynchronized ? "synchronized" : "not synchronized";
       Console::WriteLine( "myAL is {0}.", szRes );

       String* szSyncRes = mySyncdAL->IsSynchronized ? "synchronized" : "not synchronized";
       Console::WriteLine( "mySyncdAL is {0}.", szSyncRes );
    }

 /* 
 This code produces the following output.
 
 myAL is not synchronized.
 mySyncdAL is synchronized.
 */ 

[JScript] 
import System;
import System.Collections;

// Creates and initializes a new ArrayList.
var myAL : ArrayList = new ArrayList();
myAL.Add( "The" );
myAL.Add( "quick" );
myAL.Add( "brown" );
myAL.Add( "fox" );

// Creates a synchronized wrapper around the ArrayList.
var mySyncdAL : ArrayList  = ArrayList.Synchronized( myAL );

// Displays the sychronization status of both ArrayLists.
Console.WriteLine( "myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized" );
Console.WriteLine( "mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized" );
 
 /* 
 This code produces the following output.
 
 myAL is not synchronized.
 mySyncdAL is synchronized.
 */ 

参照

ArrayList クラス | ArrayList メンバ | System.Collections 名前空間