12 return Add(ref location, 1);
17 return Add(ref location, 1
L);
22 return Add(ref location, -1);
27 return Add(ref location, -1
L);
41 public static extern double Exchange(ref
double location1,
double value);
44 [
return: NotNullIfNotNull(
"location1")]
45 public static extern object?
Exchange([NotNullIfNotNull(
"value")] ref
object? location1,
object?
value);
48 [
return: NotNullIfNotNull(
"location1")]
49 public static T
Exchange<T>([NotNullIfNotNull(
"value")] ref T location1, T
value) where
T :
class?
68 [
return: NotNullIfNotNull(
"location1")]
72 [
return: NotNullIfNotNull(
"location1")]
78 public static int Add(ref
int location1,
int value)
83 public static long Add(ref
long location1,
long value)
95 public static long Read(ref
long location)
117 [CLSCompliant(
false)]
120 return Add(ref location, 1u);
124 [CLSCompliant(
false)]
127 return Add(ref location, 1uL);
131 [CLSCompliant(
false)]
134 return (uint)
Add(ref
Unsafe.As<uint,
int>(ref location), -1);
138 [CLSCompliant(
false)]
141 return (ulong)
Add(ref
Unsafe.As<ulong,
long>(ref location), -1
L);
145 [CLSCompliant(
false)]
152 [CLSCompliant(
false)]
165 [CLSCompliant(
false)]
172 [CLSCompliant(
false)]
185 [CLSCompliant(
false)]
186 public static uint
Add(ref uint location1, uint
value)
188 return (uint)
Add(ref
Unsafe.As<uint,
int>(ref location1), (
int)
value);
192 [CLSCompliant(
false)]
193 public static ulong
Add(ref ulong location1, ulong
value)
195 return (ulong)
Add(ref
Unsafe.As<ulong,
long>(ref location1), (
long)
value);
199 [CLSCompliant(
false)]
200 public static ulong
Read(ref ulong location)
207 public static int And(ref
int location1,
int value)
213 int value2 = num &
value;
225 [CLSCompliant(
false)]
226 public static uint
And(ref uint location1, uint
value)
228 return (uint)
And(ref
Unsafe.As<uint,
int>(ref location1), (
int)
value);
233 public static long And(ref
long location1,
long value)
235 long num = location1;
239 long value2 = num &
value;
251 [CLSCompliant(
false)]
252 public static ulong
And(ref ulong location1, ulong
value)
254 return (ulong)
And(ref
Unsafe.As<ulong,
long>(ref location1), (
long)
value);
259 public static int Or(ref
int location1,
int value)
265 int value2 = num |
value;
277 [CLSCompliant(
false)]
278 public static uint
Or(ref uint location1, uint
value)
280 return (uint)
Or(ref
Unsafe.As<uint,
int>(ref location1), (
int)
value);
285 public static long Or(ref
long location1,
long value)
287 long num = location1;
291 long value2 = num |
value;
303 [CLSCompliant(
false)]
304 public static ulong
Or(ref ulong location1, ulong
value)
306 return (ulong)
Or(ref
Unsafe.As<ulong,
long>(ref location1), (
long)
value);
static uint Or(ref uint location1, uint value)
static long ExchangeAdd(ref long location1, long value)
static T Exchange< T >([NotNullIfNotNull("value")] ref T location1, T value)
static ulong Exchange(ref ulong location1, ulong value)
static ulong Add(ref ulong location1, ulong value)
static long And(ref long location1, long value)
static ulong Or(ref ulong location1, ulong value)
static ? object CompareExchange(ref object? location1, object? value, object? comparand)
static uint And(ref uint location1, uint value)
static float CompareExchange(ref float location1, float value, float comparand)
static int CompareExchange(ref int location1, int value, int comparand)
static uint Add(ref uint location1, uint value)
static void _MemoryBarrierProcessWide()
static IntPtr CompareExchange(ref IntPtr location1, IntPtr value, IntPtr comparand)
static ulong Read(ref ulong location)
static uint Exchange(ref uint location1, uint value)
static IntPtr Exchange(ref IntPtr location1, IntPtr value)
static float Exchange(ref float location1, float value)
static uint CompareExchange(ref uint location1, uint value, uint comparand)
static double Exchange(ref double location1, double value)
static ulong Increment(ref ulong location)
static int Exchange(ref int location1, int value)
static long CompareExchange(ref long location1, long value, long comparand)
static double CompareExchange(ref double location1, double value, double comparand)
static long Or(ref long location1, long value)
static int Decrement(ref int location)
static ulong CompareExchange(ref ulong location1, ulong value, ulong comparand)
static long Exchange(ref long location1, long value)
static long Read(ref long location)
static int Add(ref int location1, int value)
static void MemoryBarrierProcessWide()
static int Increment(ref int location)
static int ExchangeAdd(ref int location1, int value)
static long Add(ref long location1, long value)
static uint Increment(ref uint location)
static long Decrement(ref long location)
static int And(ref int location1, int value)
static ulong Decrement(ref ulong location)
static void MemoryBarrier()
static long Increment(ref long location)
static void ReadMemoryBarrier()
static int Or(ref int location1, int value)
static ? object Exchange([NotNullIfNotNull("value")] ref object? location1, object? value)
static T CompareExchange< T >(ref T location1, T value, T comparand)
static uint Decrement(ref uint location)
static ulong And(ref ulong location1, ulong value)