Thread.VolatileRead メソッド

定義

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

オーバーロード

VolatileRead(SByte)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Single)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(UIntPtr)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(UInt32)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(UInt64)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Object)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(UInt16)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Int64)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(IntPtr)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Int16)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Double)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Byte)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(Int32)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

VolatileRead(SByte)

重要

この API は CLS 準拠ではありません。

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::SByte VolatileRead(System::SByte % address);
public static sbyte VolatileRead (ref sbyte address);
[System.CLSCompliant(false)]
public static sbyte VolatileRead (ref sbyte address);
static member VolatileRead : sbyte -> sbyte
[<System.CLSCompliant(false)>]
static member VolatileRead : sbyte -> sbyte
Public Shared Function VolatileRead (ByRef address As SByte) As SByte

パラメーター

address
SByte

読み取られるフィールド。The field to be read.

戻り値

SByte

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

属性

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Single)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static float VolatileRead(float % address);
public static float VolatileRead (ref float address);
static member VolatileRead : single -> single
Public Shared Function VolatileRead (ByRef address As Single) As Single

パラメーター

address
Single

読み取られるフィールド。The field to be read.

戻り値

Single

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(UIntPtr)

重要

この API は CLS 準拠ではありません。

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static UIntPtr VolatileRead(UIntPtr % address);
public static UIntPtr VolatileRead (ref UIntPtr address);
[System.CLSCompliant(false)]
public static UIntPtr VolatileRead (ref UIntPtr address);
static member VolatileRead : unativeint -> unativeint
[<System.CLSCompliant(false)>]
static member VolatileRead : unativeint -> unativeint
Public Shared Function VolatileRead (ByRef address As UIntPtr) As UIntPtr

パラメーター

address
UIntPtr

読み取られるフィールド。The field to be read.

戻り値

UIntPtr

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

属性

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(UInt32)

重要

この API は CLS 準拠ではありません。

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::UInt32 VolatileRead(System::UInt32 % address);
public static uint VolatileRead (ref uint address);
[System.CLSCompliant(false)]
public static uint VolatileRead (ref uint address);
static member VolatileRead : uint32 -> uint32
[<System.CLSCompliant(false)>]
static member VolatileRead : uint32 -> uint32
Public Shared Function VolatileRead (ByRef address As UInteger) As UInteger

パラメーター

address
UInt32

読み取られるフィールド。The field to be read.

戻り値

UInt32

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

属性

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(UInt64)

重要

この API は CLS 準拠ではありません。

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::UInt64 VolatileRead(System::UInt64 % address);
public static ulong VolatileRead (ref ulong address);
[System.CLSCompliant(false)]
public static ulong VolatileRead (ref ulong address);
static member VolatileRead : uint64 -> uint64
[<System.CLSCompliant(false)>]
static member VolatileRead : uint64 -> uint64
Public Shared Function VolatileRead (ByRef address As ULong) As ULong

パラメーター

address
UInt64

読み取られるフィールド。The field to be read.

戻り値

UInt64

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

属性

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Object)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::Object ^ VolatileRead(System::Object ^ % address);
public static object VolatileRead (ref object address);
static member VolatileRead : obj -> obj
Public Shared Function VolatileRead (ByRef address As Object) As Object

パラメーター

address
Object

読み取られるフィールド。The field to be read.

戻り値

Object

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(UInt16)

重要

この API は CLS 準拠ではありません。

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::UInt16 VolatileRead(System::UInt16 % address);
public static ushort VolatileRead (ref ushort address);
[System.CLSCompliant(false)]
public static ushort VolatileRead (ref ushort address);
static member VolatileRead : uint16 -> uint16
[<System.CLSCompliant(false)>]
static member VolatileRead : uint16 -> uint16
Public Shared Function VolatileRead (ByRef address As UShort) As UShort

パラメーター

address
UInt16

読み取られるフィールド。The field to be read.

戻り値

UInt16

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

属性

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Int64)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static long VolatileRead(long % address);
public static long VolatileRead (ref long address);
static member VolatileRead : int64 -> int64
Public Shared Function VolatileRead (ByRef address As Long) As Long

パラメーター

address
Int64

読み取られるフィールド。The field to be read.

戻り値

Int64

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(IntPtr)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static IntPtr VolatileRead(IntPtr % address);
public static IntPtr VolatileRead (ref IntPtr address);
static member VolatileRead : nativeint -> nativeint
Public Shared Function VolatileRead (ByRef address As IntPtr) As IntPtr

パラメーター

address
IntPtr

読み取られるフィールド。The field to be read.

戻り値

IntPtr

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Int16)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static short VolatileRead(short % address);
public static short VolatileRead (ref short address);
static member VolatileRead : int16 -> int16
Public Shared Function VolatileRead (ByRef address As Short) As Short

パラメーター

address
Int16

読み取られるフィールド。The field to be read.

戻り値

Int16

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Double)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static double VolatileRead(double % address);
public static double VolatileRead (ref double address);
static member VolatileRead : double -> double
Public Shared Function VolatileRead (ByRef address As Double) As Double

パラメーター

address
Double

読み取られるフィールド。The field to be read.

戻り値

Double

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Byte)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static System::Byte VolatileRead(System::Byte % address);
public static byte VolatileRead (ref byte address);
static member VolatileRead : byte -> byte
Public Shared Function VolatileRead (ByRef address As Byte) As Byte

パラメーター

address
Byte

読み取られるフィールド。The field to be read.

戻り値

Byte

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象

VolatileRead(Int32)

フィールドの値を読み取ります。Reads the value of a field. この値は、プロセッサの数やプロセッサ キャッシュの状態にかかわらず、コンピューター内のいずれかのプロセッサによって書き込まれた最新の値です。The value is the latest written by any processor in a computer, regardless of the number of processors or the state of processor cache.

public:
 static int VolatileRead(int % address);
public static int VolatileRead (ref int address);
static member VolatileRead : int -> int
Public Shared Function VolatileRead (ByRef address As Integer) As Integer

パラメーター

address
Int32

読み取られるフィールド。The field to be read.

戻り値

Int32

いずれかのプロセッサによってフィールドに書き込まれた最新の値。The latest value written to the field by any processor.

注釈

VolatileReadVolatileWrite は、特殊な同期を行う場合に使用します。VolatileRead and VolatileWrite are for special cases of synchronization. 通常の状況では、C# lock ステートメント、Visual Basic SyncLock ステートメント、およびクラスを使用すると、 Monitor 簡単に代替できます。Under normal circumstances, the C# lock statement, the Visual Basic SyncLock statement, and the Monitor class provide easier alternatives.

マルチプロセッサシステムでは、は、 VolatileRead 任意のプロセッサによってメモリ位置に書き込まれた最新の値を取得します。On a multiprocessor system, VolatileRead obtains the very latest value written to a memory location by any processor. これには、プロセッサキャッシュのフラッシュが必要になる場合があります。This might require flushing processor caches.

ユニプロセッサシステムであっても、 VolatileRead VolatileWrite 値が読み取られ、メモリに書き込まれ、キャッシュされないことを確認します (たとえば、プロセッサレジスタなど)。Even on a uniprocessor system, VolatileRead and VolatileWrite ensure that a value is read or written to memory, and not cached (for example, in a processor register). そのため、別のスレッドまたはハードウェアによって更新できるフィールドへのアクセスを同期するために使用できます。Thus, you can use them to synchronize access to a field that can be updated by another thread, or by hardware.

このメソッドを呼び出すと、1つのメモリアクセスだけに影響します。Calling this method affects only a single memory access. フィールドへの有効な同期を提供するには、フィールドへのすべてのアクセスでまたはを使用する必要があり VolatileRead VolatileWrite ます。To provide effective synchronization for a field, all access to the field must use VolatileRead or VolatileWrite.

注意

C# では、フィールドに対して修飾子を使用すると、 volatile そのフィールドへのすべてのアクセスがまたはを使用することが保証され VolatileRead VolatileWrite ます。In C#, using the volatile modifier on a field guarantees that all access to that field uses VolatileRead or VolatileWrite.

適用対象