Why is there no Interlocked.Read function available for double since there are Interlocked.Exchange and Interlocked.CompareExchange methods available for double which can perform more complex functions atomically. Using such methods to read a double value atomically (instead of using Interlocked.Read) will add an overhead to a simple reading operation.
Could you suggest a simpler approach to read a double atomically where as another thread is updating this double using Interlocked.Exchange method.