mirror of
https://github.com/denoland/deno.git
synced 2025-08-04 02:48:24 +00:00
perf(lsp): concurrent reads and exclusive writes (#17135)
This commit is contained in:
parent
1e0017d8fc
commit
54d40e008a
7 changed files with 202 additions and 163 deletions
|
@ -138,11 +138,7 @@ impl InnerNpmPackageResolver for GlobalNpmPackageResolver {
|
|||
packages: Vec<NpmPackageReq>,
|
||||
) -> BoxFuture<'static, Result<(), AnyError>> {
|
||||
let resolver = self.clone();
|
||||
async move {
|
||||
resolver.resolution.add_package_reqs(packages).await?;
|
||||
cache_packages_in_resolver(&resolver).await
|
||||
}
|
||||
.boxed()
|
||||
async move { resolver.resolution.add_package_reqs(packages).await }.boxed()
|
||||
}
|
||||
|
||||
fn set_package_reqs(
|
||||
|
@ -150,11 +146,12 @@ impl InnerNpmPackageResolver for GlobalNpmPackageResolver {
|
|||
packages: HashSet<NpmPackageReq>,
|
||||
) -> BoxFuture<'static, Result<(), AnyError>> {
|
||||
let resolver = self.clone();
|
||||
async move {
|
||||
resolver.resolution.set_package_reqs(packages).await?;
|
||||
cache_packages_in_resolver(&resolver).await
|
||||
}
|
||||
.boxed()
|
||||
async move { resolver.resolution.set_package_reqs(packages).await }.boxed()
|
||||
}
|
||||
|
||||
fn cache_packages(&self) -> BoxFuture<'static, Result<(), AnyError>> {
|
||||
let resolver = self.clone();
|
||||
async move { cache_packages_in_resolver(&resolver).await }.boxed()
|
||||
}
|
||||
|
||||
fn ensure_read_permission(&self, path: &Path) -> Result<(), AnyError> {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue