The new C11 standard provides a support for Multi-Threading.
My Questions are a bit diversified but definitely answerable.
I have had a look at the C11 n1570 draft.
It says:
support for multiple threads of execution including an improved memory sequencing model, atomic objects, and thread-local storage (
<stdatomic.h>
and<threads.h>
)
What is the Improved memory sequencing model? How/What changes from the c99 Standard?
我不只引用标准,而是希望有人会更深入地参与,并试图解释所涉的语义。
如我所知,C11支持:
- Thread creation and Management
- Mutex
- Conditional Variables
- Thread Specific storage &
- Atomic Objects
I hope I didn t miss anything?
Since now the Standard library itself provides(will provide) all the functionalities needed for Multi-Threading, there would be no need for POSIX and such libraries(for Multi-Threading support) in future?
Lastly, What compilers provide support for the above mentioned features? Are there any references as to timelines when these will be supported?
I remember for C++11 there was a link for compiler support and features, perhaps something like that?