Skip to content

Instantly share code, notes, and snippets.

@davidgrenier
Created May 26, 2013 20:39
Show Gist options
  • Save davidgrenier/5653949 to your computer and use it in GitHub Desktop.
Save davidgrenier/5653949 to your computer and use it in GitHub Desktop.
let trySwap (source: obj ref) replacement =
let before = !source
let result = System.Threading.Interlocked.CompareExchange(source, replacement, before)
System.Object.ReferenceEquals(before, result)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment