Thread.VolatileWriteとは? わかりやすく解説

Thread.VolatileWrite メソッド (Double, Double)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Double,
 _
    value As Double _
)
public static void VolatileWrite
 (
    /** @ref */ double address, 
    double value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (UInt16, UInt16)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

このメソッドは、CLS に準拠していません。  

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<CLSCompliantAttribute(False)> _
Public Shared Sub VolatileWrite
 ( _
    ByRef address As UShort, _
    value As UShort _
)
Dim address As UShort
Dim value As UShort

Thread.VolatileWrite(address, value)
[CLSCompliantAttribute(false)] 
public static void VolatileWrite
 (
    ref ushort address,
    ushort value
)
[CLSCompliantAttribute(false)] 
public:
static void VolatileWrite (
    unsigned short% address, 
    unsigned short value
)
/** @attribute CLSCompliantAttribute(false) */ 
public static void VolatileWrite
 (
    /** @ref */ UInt16 address, 
    UInt16 value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
オーバーロードの一覧オーバーロードの一覧

名前 説明
Thread.VolatileWrite (Byte, Byte) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Double, Double) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Int16, Int16) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Int32, Int32) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Int64, Int64) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (IntPtr, IntPtr) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Object, Object) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (SByte, SByte) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (Single, Single) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (UInt16, UInt16) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (UInt32, UInt32) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (UInt64, UInt64) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
Thread.VolatileWrite (UIntPtr, UIntPtr) 値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。
参照参照

Thread.VolatileWrite メソッド (UInt32, UInt32)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

このメソッドは、CLS に準拠していません。  

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<CLSCompliantAttribute(False)> _
Public Shared Sub VolatileWrite
 ( _
    ByRef address As UInteger, _
    value As UInteger _
)
Dim address As UInteger
Dim value As UInteger

Thread.VolatileWrite(address, value)
[CLSCompliantAttribute(false)] 
public static void VolatileWrite
 (
    ref uint address,
    uint value
)
[CLSCompliantAttribute(false)] 
public:
static void VolatileWrite (
    unsigned int% address, 
    unsigned int value
)
/** @attribute CLSCompliantAttribute(false) */ 
public static void VolatileWrite
 (
    /** @ref */ UInt32 address, 
    UInt32 value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (UIntPtr, UIntPtr)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

このメソッドは、CLS に準拠していません。  

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<CLSCompliantAttribute(False)> _
Public Shared Sub VolatileWrite
 ( _
    ByRef address As UIntPtr, _
    value As UIntPtr _
)
Dim address As UIntPtr
Dim value As UIntPtr

Thread.VolatileWrite(address, value)
[CLSCompliantAttribute(false)] 
public static void VolatileWrite
 (
    ref UIntPtr address,
    UIntPtr value
)
[CLSCompliantAttribute(false)] 
public:
static void VolatileWrite (
    UIntPtr% address, 
    UIntPtr value
)
/** @attribute CLSCompliantAttribute(false) */ 
public static void VolatileWrite
 (
    /** @ref */ UIntPtr address, 
    UIntPtr value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (SByte, SByte)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

このメソッドは、CLS に準拠していません。  

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<CLSCompliantAttribute(False)> _
Public Shared Sub VolatileWrite
 ( _
    ByRef address As SByte, _
    value As SByte _
)
Dim address As SByte
Dim value As SByte

Thread.VolatileWrite(address, value)
[CLSCompliantAttribute(false)] 
public static void VolatileWrite
 (
    ref sbyte address,
    sbyte value
)
[CLSCompliantAttribute(false)] 
public:
static void VolatileWrite (
    signed char% address, 
    signed char value
)
/** @attribute CLSCompliantAttribute(false) */ 
public static void VolatileWrite
 (
    /** @ref */ SByte address, 
    SByte value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Int16, Int16)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Short,
 _
    value As Short _
)
public:
static void VolatileWrite (
    short% address, 
    short value
)
public static void VolatileWrite
 (
    /** @ref */ short address, 
    short value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Object, Object)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Object,
 _
    value As Object _
)
public:
static void VolatileWrite (
    Object^% address, 
    Object^ value
)
public static void VolatileWrite
 (
    /** @ref */ Object address, 
    Object value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (UInt64, UInt64)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

このメソッドは、CLS に準拠していません。  

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

<CLSCompliantAttribute(False)> _
Public Shared Sub VolatileWrite
 ( _
    ByRef address As ULong, _
    value As ULong _
)
[CLSCompliantAttribute(false)] 
public static void VolatileWrite
 (
    ref ulong address,
    ulong value
)
[CLSCompliantAttribute(false)] 
public:
static void VolatileWrite (
    usigned long long% address, 
    usigned long long value
)
/** @attribute CLSCompliantAttribute(false) */ 
public static void VolatileWrite
 (
    /** @ref */ UInt64 address, 
    UInt64 value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Single, Single)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Single,
 _
    value As Single _
)
public:
static void VolatileWrite (
    float% address, 
    float value
)
public static void VolatileWrite
 (
    /** @ref */ float address, 
    float value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Byte, Byte)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Byte,
 _
    value As Byte _
)
Dim address As Byte
Dim value As Byte

Thread.VolatileWrite(address, value)
public:
static void VolatileWrite (
    unsigned char% address, 
    unsigned char value
)
public static void VolatileWrite
 (
    /** @ref */ byte address, 
    byte value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (IntPtr, IntPtr)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As IntPtr, _
    value As IntPtr _
)
Dim address As IntPtr
Dim value As IntPtr

Thread.VolatileWrite(address, value)
public static void VolatileWrite
 (
    ref IntPtr address,
    IntPtr value
)
public:
static void VolatileWrite (
    IntPtr% address, 
    IntPtr value
)
public static void VolatileWrite
 (
    /** @ref */ IntPtr address, 
    IntPtr value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Int64, Int64)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Long,
 _
    value As Long _
)
Dim address As Long
Dim value As Long

Thread.VolatileWrite(address, value)
public static void VolatileWrite
 (
    /** @ref */ long address, 
    long value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照

Thread.VolatileWrite メソッド (Int32, Int32)

値をフィールドにすぐに書き込みます。値はコンピュータ内のすべてのプロセッサに対して可視になります。

名前空間: System.Threading
アセンブリ: mscorlib (mscorlib.dll 内)
構文構文

Public Shared Sub VolatileWrite
 ( _
    ByRef address As Integer,
 _
    value As Integer _
)
public static void VolatileWrite
 (
    ref int address,
    int value
)
public:
static void VolatileWrite (
    int% address, 
    int value
)
public static void VolatileWrite
 (
    /** @ref */ int address, 
    int value
)
JScript では、値型の引数は参照渡しされません。

パラメータ

address

値を書き込むフィールド。

value

書き込む値。

解説解説

VolatileRead および VolatileWrite は、特別な場合の同期のためにあります。一般的な状況の場合、C# の lock ステートメント、Visual Basic の SyncLock ステートメント、および Monitor クラスは、より使いやすい代替方法です。

マルチプロセッサ システムの場合、VolatileWrite では、メモリ位置に書き込まれた値がすぐにすべてのプロセッサから可視になることが保証されます。これには、プロセッサ キャッシュのフラッシュが必要な場合があります。

ユニプロセッサ システムの場合でも、VolatileRead および VolatileWrite では、値がメモリに読み取りまたは書き込みされることが保証されます。プロセッサ レジスタなどにキャッシュされません。したがって、これらを使用することによって、別のスレッドまたはハードウェアが更新することがあるフィールドへのアクセスを同期できます。

このメソッドの呼び出しは、1 回のメモリ アクセスでだけ有効です。フィールドの効果的な同期を提供するためには、フィールドへのすべてのアクセスで VolatileRead または VolatileWrite を使用する必要があります。

メモメモ

C# の場合、フィールドに volatile 修飾子を使用すると、そのフィールドへのすべてのアクセスで VolatileRead または VolatileWrite が使用されることが保証されます。

プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳

英語⇒日本語日本語⇒英語

辞書ショートカット

すべての辞書の索引

「Thread.VolatileWrite」の関連用語

Thread.VolatileWriteのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Thread.VolatileWriteのページの著作権

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2026 Microsoft.All rights reserved.

©2026 GRAS Group, Inc.RSS