close method
void
close()
Implementation
void close() {
/// 一些特殊情况下,`controller.close()`不会立即调用`onCancel`
/// 比如:没有`listen`
onCancel();
if (controller.isClosed) {
return;
}
/// 还是要调用一次,因为不知道用户行为
/// 比如:保存`stream`对象,在`close`之后才监听
/// 确保`Stream`收到`close`事件
controller.close();
}