[vlc-devel] [PATCH] Support for Http Dynamic Streaming
remi at remlab.net
Fri May 30 03:54:27 CEST 2014
Le 2014-05-30 02:07, Jonathan Thambidurai a écrit :
> Let us assume that a second thread t2 changes chunk->next. Since t1
> is storing what it believes to be chunk->next in a register (and not
> updating it from the actual memory location), t1 will get stuck in
> whatever state it was in in the first place.
A thread writing a memory location while another thread is reading the
same location is explicitly undefined behaviour within the scope of the
(POSIX and C11) memory model(s). The abuse of the "volatile" keyword
does not make that any better defined. You are making unwarranted
assumptions about the implementation of volatile in the compiler, about
the atomicity and coherence of memory accesses as provided by the
instructions set and the chipset respectively.
More information about the vlc-devel