cancel_ subscriptions
Saiba mais sobre a regra de lint cancel_subscriptions.
Cancele instâncias de StreamSubscription do dart:async.
Detalhes
#
FAÇA invocar cancel em instâncias de StreamSubscription do
dart:async.
Cancelar instâncias de StreamSubscription evita vazamentos de memória e comportamentos inesperados.
RUIM:
class A {
StreamSubscription _subscriptionA; // LINT
void init(Stream stream) {
_subscriptionA = stream.listen((_) {});
}
}
RUIM:
void someFunction() {
StreamSubscription _subscriptionF; // LINT
}
BOM:
class B {
StreamSubscription _subscriptionB; // OK
void init(Stream stream) {
_subscriptionB = stream.listen((_) {});
}
void dispose(filename) {
_subscriptionB.cancel();
}
}
BOM:
void someFunctionOK() {
StreamSubscription _subscriptionB; // OK
_subscriptionB.cancel();
}
Limitações conhecidas
Esta regra não rastreia todos os padrões de instanciação e cancelamento de StreamSubscription. Consulte linter#317 para mais informações.
Ativar
#
Para ativar a regra cancel_subscriptions, adicione cancel_subscriptions em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- cancel_subscriptions
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione cancel_subscriptions: true em linter > rules:
linter:
rules:
cancel_subscriptions: true
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.