DEP0200:垃圾回收时关闭 fs.Dir
¥DEP0200: Closing fs.Dir on garbage collection
类型:仅文档
¥Type: Documentation-only
允许在垃圾回收时关闭 fs.Dir
对象已弃用。将来,这样做可能会导致抛出错误,从而终止进程。
¥Allowing a fs.Dir
object to be closed on garbage collection is
deprecated. In the future, doing so might result in a thrown error that will
terminate the process.
请确保所有 fs.Dir
对象都已使用 Dir.prototype.close()
或 using
关键字显式关闭:
¥Please ensure that all fs.Dir
objects are explicitly closed using
Dir.prototype.close()
or using
keyword:
import { opendir } from 'node:fs/promises';
{
await using dir = await opendir('/async/disposable/directory');
} // Closed by dir[Symbol.asyncDispose]()
{
using dir = await opendir('/sync/disposable/directory');
} // Closed by dir[Symbol.dispose]()
{
const dir = await opendir('/unconditionally/iterated/directory');
for await (const entry of dir) {
// process an entry
} // Closed by iterator
}
{
let dir;
try {
dir = await opendir('/legacy/closeable/directory');
} finally {
await dir?.close();
}
}