Метод Write
Volatile.Write делает запись
видимой для последующих
Read
без отложенной перестановки. Не
заменяет
Interlocked
для счётчика.
Синтаксис
Volatile.Write(ref location, 12345);
Пример
Давайте записать 12345 и
прочитать:
using System;
using System.Threading;
class Program
{
static void Main()
{
int location = 0;
Volatile.Write(ref location, 12345);
int res = Volatile.Read(ref location);
Console.WriteLine(res);
}
}
Результат выполнения кода:
12345
Пример
Давайте записать 1 поверх
старого значения:
using System;
using System.Threading;
class Program
{
static void Main()
{
int location = 12345;
Volatile.Write(ref location, 1);
int res = location;
Console.WriteLine(res);
}
}
Результат выполнения кода:
1
Пример
Давайте записать строку
"abcde":
using System;
using System.Threading;
class Program
{
static void Main()
{
string? location = "12345";
Volatile.Write(ref location, "abcde");
string? res = Volatile.Read(ref location);
Console.WriteLine(res);
}
}
Результат выполнения кода:
"abcde"
Смотрите также
-
метод
Read,
прочитать после записи -
Volatile,
класс, где объявленWrite -
метод
Exchange,
атомарная подмена -
Interlocked,
атомарные операции