close_sinks
dart:core
のSink
インスタンスを閉じます。
このルールは、Dart 2.0から利用可能です。
詳細
#必ずdart:core
のSink
インスタンスに対してclose
を呼び出してください。
Sinkインスタンスを閉じると、メモリリークと予期しない動作を防ぐことができます。
悪い例
dart
class A {
IOSink _sinkA;
void init(filename) {
_sinkA = File(filename).openWrite(); // LINT
}
}
悪い例
dart
void someFunction() {
IOSink _sinkF; // LINT
}
良い例
dart
class B {
IOSink _sinkB;
void init(filename) {
_sinkB = File(filename).openWrite(); // OK
}
void dispose(filename) {
_sinkB.close();
}
}
良い例
dart
void someFunctionOK() {
IOSink _sinkFOK; // OK
_sinkFOK.close();
}
既知の制限事項
このルールは、Sinkのインスタンス化とクロージャのすべてのパターンを追跡するわけではありません。linter#1381で詳細情報を確認してください。
使用方法
#close_sinks
ルールを有効にするには、analysis_options.yaml
ファイルのlinter > rulesセクションにclose_sinks
を追加します。analysis_options.yaml
analysis_options.yaml
yaml
linter:
rules:
- close_sinks
特に明記されていない限り、このサイトのドキュメントはDart 3.5.3を反映しています。ページの最終更新日は2024年7月3日です。 ソースコードを表示 または 問題を報告する。