gst-plugins-rs/generic
François Laignel 2bb071a950 ts/runtime: slight optimizations for sub tasks related operations
Using callgrind with the standalone test showed opportunities for
improvements for sub tasks addition and drain.

All sub task additions were performed after making sure we were
operating on a Context Task. The Context and Task were checked
again when adding the sub task.

Draining sub tasks was perfomed in a loop on every call places,
checking whether there were remaining sub tasks first. This
commit implements the loop and checks directly in
`executor::Task::drain_subtasks`, saving one `Mutex` lock and
one `thread_local` access per iteration when there are sub
tasks to drain.

The `PadSink` functions wrapper were performing redundant checks
on the `Context` presence and were adding the delayed Future only
when there were already sub tasks.
2022-08-18 18:42:18 +02:00
..
file Update minimum supported GStreamer version to 1.14 2022-04-07 12:41:54 +03:00
fmp4 fmp4mux: Dequeue the earliest buffer from any pad first instead of dequeueing up to a whole fragment from the same pad 2022-08-17 19:23:18 +03:00
sodium Simplify Formatted value handling 2022-07-11 21:21:54 +02:00
threadshare ts/runtime: slight optimizations for sub tasks related operations 2022-08-18 18:42:18 +02:00