I found it in many references which mention that volatile in C/C++ is is weak and may cause issue in concurrent environment on multiple processor, but it (
In C/C++, volatile has no particular semantics that relate to multithreading, so what behavior it will have in that context is platform-specific. C# and Java provide specific multithreading semantics for volatile. So you know what you're getting and can rely on it.