Thread.VolatileRead Thread.VolatileRead Thread.VolatileRead Thread.VolatileRead Method

Определение

Считывает значение поля.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) VolatileRead(SByte) VolatileRead(SByte) 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) VolatileRead(Single) VolatileRead(Single) 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) VolatileRead(UIntPtr) VolatileRead(UIntPtr) 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) VolatileRead(UInt32) VolatileRead(UInt32) 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) VolatileRead(UInt64) VolatileRead(UInt64) 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) VolatileRead(Object) VolatileRead(Object) 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) VolatileRead(UInt16) VolatileRead(UInt16) 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) VolatileRead(Int64) VolatileRead(Int64) 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) VolatileRead(IntPtr) VolatileRead(IntPtr) 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) VolatileRead(Int16) VolatileRead(Int16) 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) VolatileRead(Double) VolatileRead(Double) 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) VolatileRead(Byte) VolatileRead(Byte) 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) VolatileRead(Int32) VolatileRead(Int32) 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) VolatileRead(SByte) VolatileRead(SByte) 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);
[System.CLSCompliant(false)]
public static sbyte VolatileRead (ref sbyte address);
static member VolatileRead :  -> sbyte
Public Shared Function VolatileRead (ByRef address As SByte) As SByte

Параметры

address
SByte SByte SByte SByte

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Single) VolatileRead(Single) 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
Public Shared Function VolatileRead (ByRef address As Single) As Single

Параметры

address
Single Single Single Single

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(UIntPtr) VolatileRead(UIntPtr) 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);
[System.CLSCompliant(false)]
public static UIntPtr VolatileRead (ref UIntPtr address);
static member VolatileRead :  -> unativeint
Public Shared Function VolatileRead (ByRef address As UIntPtr) As UIntPtr

Параметры

address
UIntPtr UIntPtr UIntPtr UIntPtr

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(UInt32) VolatileRead(UInt32) 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);
[System.CLSCompliant(false)]
public static uint VolatileRead (ref uint address);
static member VolatileRead :  -> uint32
Public Shared Function VolatileRead (ByRef address As UInteger) As UInteger

Параметры

address
UInt32 UInt32 UInt32 UInt32

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(UInt64) VolatileRead(UInt64) 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);
[System.CLSCompliant(false)]
public static ulong VolatileRead (ref ulong address);
static member VolatileRead :  -> uint64
Public Shared Function VolatileRead (ByRef address As ULong) As ULong

Параметры

address
UInt64 UInt64 UInt64 UInt64

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Object) VolatileRead(Object) 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
Public Shared Function VolatileRead (ByRef address As Object) As Object

Параметры

address
Object Object Object Object

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(UInt16) VolatileRead(UInt16) 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);
[System.CLSCompliant(false)]
public static ushort VolatileRead (ref ushort address);
static member VolatileRead :  -> uint16
Public Shared Function VolatileRead (ByRef address As UShort) As UShort

Параметры

address
UInt16 UInt16 UInt16 UInt16

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Int64) VolatileRead(Int64) 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
Public Shared Function VolatileRead (ByRef address As Long) As Long

Параметры

address
Int64 Int64 Int64 Int64

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(IntPtr) VolatileRead(IntPtr) 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
Public Shared Function VolatileRead (ByRef address As IntPtr) As IntPtr

Параметры

address
IntPtr IntPtr IntPtr IntPtr

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Int16) VolatileRead(Int16) 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
Public Shared Function VolatileRead (ByRef address As Short) As Short

Параметры

address
Int16 Int16 Int16 Int16

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Double) VolatileRead(Double) 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
Public Shared Function VolatileRead (ByRef address As Double) As Double

Параметры

address
Double Double Double Double

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Byte) VolatileRead(Byte) 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
Public Shared Function VolatileRead (ByRef address As Byte) As Byte

Параметры

address
Byte Byte Byte Byte

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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) VolatileRead(Int32) VolatileRead(Int32) 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
Public Shared Function VolatileRead (ByRef address As Integer) As Integer

Параметры

address
Int32 Int32 Int32 Int32

Поле для чтения.The field to be read.

Возвраты

Последнее значение, записанное в поле любым процессором.The latest value written to the field by any processor.

Комментарии

VolatileReadи VolatileWrite предназначены для особых случаев синхронизации.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.

Вызов этого метода влияет только на доступ к одной памяти.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.

Применяется к