diff options
author | Divy Srivastava <dj.srivastava23@gmail.com> | 2024-07-17 05:35:51 -0700 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-07-17 18:05:51 +0530 |
commit | 078def0ff8501bb07f3f286515acd8c6a2181037 (patch) | |
tree | 6811ec33761ede11e5213393e7ea3732fd54f292 /ext/node/lib.rs | |
parent | 568dd132fb0a47f9afb11bffec341c7481dda75c (diff) |
perf(ext/node): optimize fs.exists[Sync] (#24613)
Use `access` on *nix and `GetFileAttributesW` on Windows.
[Benchmark](https://paste.divy.work/p/-gq8Ark.js):
```
$ deno run -A bench.mjs # main (568dd)
existsSync: 8980.636629ms
$ target/release/deno run -A bench.mjs # this PR
existsSync: 6448.7604519999995ms
$ bun bench.mjs
existsSync: 6562.88671ms
$ node bench.mjs
existsSync: 7740.064653ms
```
Ref https://github.com/denoland/deno/pull/24434#discussion_r1679777912
Diffstat (limited to 'ext/node/lib.rs')
-rw-r--r-- | ext/node/lib.rs | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/ext/node/lib.rs b/ext/node/lib.rs index 13f9abc60..5be0fffa1 100644 --- a/ext/node/lib.rs +++ b/ext/node/lib.rs @@ -313,6 +313,7 @@ deno_core::extension!(deno_node, ops::crypto::x509::op_node_x509_get_serial_number, ops::crypto::x509::op_node_x509_key_usage, ops::fs::op_node_fs_exists_sync<P>, + ops::fs::op_node_fs_exists<P>, ops::fs::op_node_cp_sync<P>, ops::fs::op_node_cp<P>, ops::fs::op_node_lchown_sync<P>, |