Exportar (0) Imprimir
Expandir todo
Este artículo proviene de un motor de traducción automática. Mueva el puntero sobre las frases del artículo para ver el texto original. Más información.
Traducción
Original

Volatile (Clase)

.NET Framework 4.5

Contiene los métodos para realizar operaciones de memoria volátil.

System.Object
  System.Threading.Volatile

Espacio de nombres:  System.Threading
Ensamblado:  mscorlib (en mscorlib.dll)

[<AbstractClass>]
[<Sealed>]
type Volatile =  class end

  NombreDescripción
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Boolean)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Byte)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Double)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Int16)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Int32)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Int64)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(IntPtr)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(SByte)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(Single)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(UInt16)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(UInt32)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(UInt64)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(UIntPtr)Lee el valor del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsRead(T)(T)Lee la referencia de objeto del campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece después de este método en el código, el procesador no puede pasar antes de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Boolean, Boolean)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Byte, Byte)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Double, Double)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Int16, Int16)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Int32, Int32)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Int64, Int64)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una operación de memoria se produce antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(IntPtr, IntPtr)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(SByte, SByte)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(Single, Single)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(UInt16, UInt16)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(UInt32, UInt32)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(UInt64, UInt64)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(UIntPtr, UIntPtr)Escriba el valor especificado en el campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Método públicoMiembro estáticoCompatible con .NET para aplicaciones de la Tienda WindowsWrite(T)(T, T)Escribe la referencia de objeto especificada al campo especificado. En sistemas que lo requieren, inserta una barrera de memoria que evita que el procesador reordenar operaciones de memoria como sigue: Si una lectura o una escritura aparece antes de este método en el código, el procesador no puede pasar después de este método.
Arriba

En un sistema de varios procesadores, una operación de escritura volatile garantiza que un valor de tipo a una ubicación de memoria es evidente para todos los procesadores. Una operación de lectura volátil obtiene el valor muy último tipo a una ubicación de memoria por cualquier procesador. Estas operaciones pueden requerir vaciar cachés del representador, que pueden afectar al rendimiento.

NotaNota

En un sistema de monoprocesador, lee y escribe volátiles garantizan que un valor es leído o escrito en memoria y no almacenado en caché (por ejemplo, en un registro del procesador). Así, puede utilizar estas operaciones para sincronizar el acceso a un campo que se pueda actualizar por otro o por hardware.

Las operaciones de memoria volátil son para los casos especiales de sincronización, donde no es una alternativa el bloqueo normal aceptable. En circunstancias normales, la instrucción de C# lock , la instrucción de Visual Basic SyncLock , y la clase de Monitor proporcionan más sencillo y la menos propensa de acceso a los datos de sincronización, y la clase de Lazy(T) proporciona una manera sencilla de escribir el código de inicialización lazy sin utilizando el bloqueo comprobado con volver.

los métodos de Volatile.Read y de Volatile.Write habilitan la funcionalidad que no se admite en lenguajes. Por ejemplo:

  • Algunos lenguajes, como Visual Basic, no reconocen el concepto de operaciones de memoria volátil. La clase de Volatile proporciona esa funcionalidad en estos lenguajes.

    NotaNota

    Llamar a uno de estos métodos afecta solo a un único acceso de memoria. Para proporcionar la sincronización eficaz para un campo, todo el acceso al campo debe utilizar Volatile.Read y Volatile.Write.

  • En C#, usando el modificador de volatile en un campo garantiza que cada acceso a ese campo utiliza los métodos de Volatile.Read y de Volatile.Write , pero el modificador de volatile no se puede aplicar a los elementos de la matriz. los métodos de Volatile.Read y de Volatile.Write se pueden utilizar en elementos de matriz.

.NET Framework

Compatible con: 4.5

.NET para aplicaciones de la Tienda Windows

Compatible con: Windows 8

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (no se admite el rol Server Core), Windows Server 2008 R2 (se admite el rol Server Core con SP1 o versiones posteriores; no se admite Itanium)

.NET Framework no admite todas las versiones de todas las plataformas. Para obtener una lista de las versiones compatibles, vea Requisitos de sistema de .NET Framework.

Todos los miembros públicos static (Shared en Visual Basic) de este tipo son seguros para subprocesos. No se garantiza que los miembros de instancias sean seguros para la ejecución de subprocesos.

Adiciones de comunidad

AGREGAR
Mostrar:
© 2015 Microsoft