You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
16 lines
637 B
16 lines
637 B
using System.Threading;
|
|
|
|
namespace Microsoft.AspNet.SignalR.Infrastructure
|
|
{
|
|
|
|
public static class InterlockedHelper
|
|
{
|
|
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1045:DoNotPassTypesByReference", MessageId = "0#", Justification="This is an interlocked helper...")]
|
|
public static bool CompareExchangeOr(ref int location, int value, int comparandA, int comparandB)
|
|
{
|
|
return Interlocked.CompareExchange(ref location, value, comparandA) == comparandA ||
|
|
Interlocked.CompareExchange(ref location, value, comparandB) == comparandB;
|
|
}
|
|
}
|
|
|
|
} |