Questão FC670906
A respeito da lógica de programação, das linguagens de programação Python e da ferramenta Node.js, julgue o item a seguir. No Node.js, o método fs.readFile é assíncrono e utiliza c
Desenvolvimento Web
QUADRIX · 2025
A respeito da lógica de programação, das linguagens de programação Python e da ferramenta Node.js, julgue o item a seguir.
No Node.js, o método fs.readFile é assíncrono e utiliza callback, sendo totalmente equivalente a fs.readFileSync, mas com vantagem de não bloquear o event loop.
Mostrar resposta e comentário
Gabarito
Errado
Comentário do professor
fs.readFile é assíncrono e normalmente usa callback, enquanto fs.readFileSync é síncrono. Dizer que são "totalmente equivalentes" é errado porque o comportamento de execução e tratamento de erros difere: o síncrono retorna dados ou lança exceção, o assíncrono entrega resultado em callback no padrão (err, data).
É verdade que o assíncrono não bloqueia o event loop aguardando a operação, mas isso não significa ausência total de custo. I/O assíncrono em Node é delegado ao libuv e ao pool de threads; muitas leituras simultâneas podem esgotar recursos. Além disso, ambos leem todo o arquivo para memória, portanto para arquivos grandes a alternativa é usar fs.createReadStream.
Também existe API baseada em promessas (fs.promises.readFile) e utilidades para transformar callbacks em promessas. Em resumo, as funções não são equivalentes em fluxo e efeitos colaterais; a assíncrona evita bloquear o event loop, mas tem limites e diferenças práticas importantes.
Conteúdo do catálogo FC Concursos · Atualizado em