[gst-devel] INCSCHED1: scheduling / threading branch of GStreamer
Tim 'Tool-Man' Taylor
tim at tool-man.org
Sat Mar 31 02:21:59 CEST 2001
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
More information about the gstreamer-devel
mailing list