Sorry about the late reply; took me a bit to find where the conversation got forwarded. I think I have my answer from the current replies (and thank you all very much for that!), though a bit more detail in case more input is to be had: I create objects from non-DOM classes that create broadcast streams. These streams are subscribed to by other objects from non-DOM classes. These objects (some for the data model, some to represent objects drawn on a canvas) are routinely created and destroyed. Sometimes it is the object generating the stream, sometimes it is the object listening to the stream. As it stands, now, I cancel all my non-permanent streams, however the question came up in code review about how necessary it was to cancel the stream subscriptions. It sounds like, at least in my case, I should cancel the subscriptions as they are not needed. I don't cancel subscriptions if both, the stream generator and the listener are destroyed, so if there is any cancelling I should be doing there, then let me know, though I assumed two objects going out of scope with a reference only to each other via a stream would get garbage collected correctly.
Thank you all, again, for your help!
-Jeromy Streets