A quote from MSDN
Assigning an instance of this type is not thread safe on all hardware platforms because the binary representation of that instance might be too large to assign in a single atomic operation.
Does it mean is that Thead-safe on 64bit processors like Itianium or x86-64 as well?
For instance:
long data = GetData();
// some parallel task on data
Could be a problem?
Possibly, but why would you write a program that will be thread safe on some Intel workalike platforms, but not others? Note that the
DecimalandDoubletypes also have this disclaimer about thread safety.Microsoft recommends the use of locks in these cases. There are links to some good information about concurrency, memory mapping and low-level locks here:
http://social.msdn.microsoft.com/Forums/en-US/csharpgeneral/thread/f03ea3c9-4c2b-4a79-8f8c-4a6b7476b20d