mirror of
https://github.com/denoland/deno.git
synced 2024-10-31 09:14:20 -04:00
a2512de95f
This commit fixes fetch response bodies to be automatically closed if the `Response.body` readable stream goes out of scope and is GC'ed.
16 lines
553 B
JavaScript
16 lines
553 B
JavaScript
async function doAFetch() {
|
|
const resp = await fetch("http://localhost:4545/README.md");
|
|
console.log(Deno.resources()); // print the current resources
|
|
const _resp = resp;
|
|
// at this point resp can be GC'ed
|
|
}
|
|
|
|
await doAFetch(); // create a resource
|
|
|
|
globalThis.gc(); // force GC
|
|
|
|
// It is very important that there is a yield here, otherwise the finalizer for
|
|
// the response body is not called and the resource is not closed.
|
|
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
|
|
console.log(Deno.resources()); // print the current resources
|