cancel_subscriptions 진단: StreamSubscription을 취소하지 않았을 때

cancel_subscriptions 진단: StreamSubscription을 취소하지 않았을 때

cancel_subscriptionsStreamSubscription 인스턴스를 만들었는데 cancel 메서드를 호출하지 않았을 때 Dart 분석기가 알려주는 린트(lint) 규칙이에요.

출처: cancel_subscriptions

본문

설명

분석기는 StreamSubscription 인스턴스를 만들었는데 cancel 메서드를 호출하지 않을 때 이 진단을 만들어요.

예시

다음 코드는 구독(subscription)을 취소하지 않기 때문에 이 진단을 만들어요.

import 'dart:async';

void f(Stream stream) {
  // ignore: unused_local_variable
  var subscription = stream.listen((_) {});
}

흔한 해결 방법

구독을 취소해요.

import 'dart:async';

void f(Stream stream) {
  var subscription = stream.listen((_) {});
  subscription.cancel();
}

더 알아보기