avoid_slow_async_io
Avoid slow asynchronous dart:io methods.
此规则自 Dart 2.0 版本起可用。
详情
#AVOID using the following asynchronous file I/O methods because they are much slower than their synchronous counterparts.
Directory.existsDirectory.statFile.lastModifiedFile.existsFile.statFileSystemEntity.isDirectoryFileSystemEntity.isFileFileSystemEntity.isLinkFileSystemEntity.type
BAD:
dart
import 'dart:io';
Future<Null> someFunction() async {
var file = File('/path/to/my/file');
var now = DateTime.now();
if ((await file.lastModified()).isBefore(now)) print('before'); // LINT
}GOOD:
dart
import 'dart:io';
Future<Null> someFunction() async {
var file = File('/path/to/my/file');
var now = DateTime.now();
if (file.lastModifiedSync().isBefore(now)) print('before'); // OK
}使用方法
#要启用 avoid_slow_async_io 规则,请在你的 analysis_options.yaml 文件中,在 linter > rules 下添加 avoid_slow_async_io :
analysis_options.yaml
yaml
linter:
rules:
- avoid_slow_async_io除非另有说明,否则本网站上的文档反映的是 Dart 3.6.0。页面最后更新于 2025-02-05。 查看源代码 或 报告问题.