Pular para o conteúdo principal

avoid_slow_async_io

Detalhes sobre o diagnóstico 'avoid_slow_async_io' produzido pelo analisador do Dart.

Use of an async 'dart:io' method.

Descrição

#

O analisador emite este diagnóstico quando é usado um método assíncrono de E/S de arquivos que tem um equivalente síncrono.

Os seguintes métodos assíncronos são sinalizados:

  • Directory.exists
  • Directory.stat
  • File.lastModified
  • File.exists
  • File.stat
  • FileSystemEntity.isDirectory
  • FileSystemEntity.isFile
  • FileSystemEntity.isLink
  • FileSystemEntity.type

Exemplo

#

O código a seguir produz este diagnóstico porque o método assíncrono exists é invocado:

dart
import 'dart:io';
​
Future<void> g(File f) async {
  await f.exists();
}

Correções comuns

#

Use a versão síncrona do método:

dart
import 'dart:io';
​
void g(File f) {
  f.existsSync();
}

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ê.