close method

void close()

Implementation

void close() {
  /// 一些特殊情况下,`controller.close()`不会立即调用`onCancel`
  /// 比如:没有`listen`
  onCancel();
  if (controller.isClosed) {
    return;
  }

  /// 还是要调用一次,因为不知道用户行为
  /// 比如:保存`stream`对象,在`close`之后才监听
  /// 确保`Stream`收到`close`事件
  controller.close();
}