[gst-devel] INCSCHED1: scheduling / threading branch of GStreamer
Matt Howell
matth at ridgerun.com
Sat Mar 31 23:52:01 CEST 2001
you're correct, tim -- i used the term loosely. a more precise title would be
"State-change Race Conditions and Proposed Solutions"
Tim 'Tool-Man' Taylor wrote:
> Matt Howell wrote:
>
> [snip]
>
> > ---------------------------------------------------
> > - II. Deadlock Scenarios and Proposed Solutions -
> > - (in the order they will be implemented) -
> > ---------------------------------------------------
> >
> > 1. A downstream element "waits" for a buffer from its upstream element,
> > a state change happens and "pauses" the upstream element -- the
> > downstream element is blocked and cannot execute its change_state.
> >
> [snip]
>
> > 2. Element "blocked" on getting I/O and cannot execute its change_state.
> [snip]
>
> > 3. Element using a library (code out of its control) which blocks for
> > some reason (e.g., using real blocking I/O) so main loop never gets
> > run to execute change_state.
>
> Unless I'm missing something, none of these scenarios describe Deadlock.
> They describe liveness problems. Deadlock is when two threads lock on
> eachother, each awaiting a condition that only the other thread can fulfill.
>
> --
> Tim Taylor
> tim at tool-man.org
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.sourceforge.net
> http://lists.sourceforge.net/lists/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list