What is meant by "Condition does not work properly inside of a Task"?

The help page for Task says “Condition does not work properly inside of a Task”. I haven’t looked at when that help bit was committed relative to the threadPlayer commit, but what exactly is meant by “not work properly”, nowadays? Can someone give an example?

This one is a guess. It might be that it doesn’t calculate the time of nextBeat properly, because it was decided that pause and resume calls within a given wait time should respect that time and not schedule immediately after resume.

threadPlayer was meant to fix this. The help comment is out of date.


Indeed, as I have checked that in the meantime, the Task.schelp commit is from 2011, the threadPlayer one is from 2012.

Relevant story perhaps: as a noob to SC, after I saw that “negatives first” help page for Task, I never touched Task again…

By the way, the threadPlayer should actually be documented, because it’s not a non-observable thing, as it affects even how plain Routines (no PauseStreams involved) relate to each other when using Conditions. I’ll post something about that with an example later on some other thread.

https://github.com/supercollider/supercollider/pull/5665 :handshake: