 stream when its first
subscriber is added, and will stay subscribed until this stream ends, or a
callback cancels the subscription.</p>
<p>If onListen is provided, it is called with a subscription-like object that
represents the underlying subscription to this stream. It is possible to
pause, resume or cancel the subscription during the call to onListen. It
is not possible to change the event handlers, including using
StreamSubscription.asFuture.</p>
<p>If onCancel is provided, it is called in a similar wa