Hi Atte,
On Thu, Mar 5, 2015 at 2:36 AM, Atte
On 03/04/2015 06:59 PM, Perry Cook wrote:
Atte,
A handy list of Shred functions (From our new Book, Appendix A :-):
And where do I find this info online?
Theyre probably in a changelog somewhere, but also I am working on a new documentation system (generated from ChucK source) which automatically picks up new features like this. There is a prerelease version here: https://ccrma.stanford.edu/~spencer/ckdoc/
The ones you want are running() or done()
Hmmm. Thought I could do
return(Shred.fromId(myID).running())
but that gives null pointer exception. Makes sense, the shred with the id is not running, so I get a null reference, and trying to call running() on that... Better is
return(Shred.fromId(myID)!=null)
However something strange happens in combination with Machine.remove(myID) that doesn't happen when I switch to Shred.fromId(myID).exit(). The scenario is quite complex, so for now a quick difference of the two ways to remove a shred would be nice...
Hmm, it would be nice if there was no difference. But there is a difference, internally, and it appears that is leaking out of the abstraction so to speak. So basically .exit() appears to terminate the shred immediately whereas Machine.remove() waits until all shreds have finished executing for this sample, i.e. all shreds are waiting => now. At least that is what I am interpreting from the source code. spencer -- Atte http://atte.dk http://a773.dk _______________________________________________ chuck-users mailing list chuck-users@lists.cs.princeton.edu https://lists.cs.princeton.edu/mailman/listinfo/chuck-users -- Spencer Salazar Doctoral Candidate Center for Computer Research in Music and Acoustics Stanford University spencer@ccrma.stanford.edu +1 831.277.4654 https://ccrma.stanford.edu/~spencer/