gpt4 book ai didi

windows - 使用新项目创建目录的竞争条件?

转载 作者:可可西里 更新时间:2023-11-01 13:15:10 24 4
gpt4 key购买 nike

调用 New-Item 以使用 UNC 路径在外部计算机上创建目录时,我看到了竞争条件。代码如下:

New-Item $target -itemType Directory -Force -Verbose |
%{ Write-Host "Creating dir" $_.FullName }

之后立即使用 Test-Path 返回 false。我放置了一个 Test-Path -> sleep for 1 second retry loop,在休眠 1 秒后,Test-Path 返回 true。

New-Item 是阻塞调用吗?我是否应该在调用 New-Item 后等待?

最佳答案

我无法重现您的问题。

PS > New-Item "test" -itemType Directory -Force -Verbose | %{ Test-Path $_.FullName }
VERBOSE: Performing the operation "Create Directory" on target "Destination: C:\Users\Frode\Desktop\test".
True

New-Item 通过获取 DirectoryInfo 创建一个新目录-父目录的对象,并将其称为CreateSubDirectory ,比如:

DirectoryInfo subdirectory = new DirectoryInfo(parentPath).CreateSubdirectory(childName);

我不是开发人员,但 AFAIK 这意味着它是一个阻塞调用,因为它等待一个 DirectoryInfo 对象作为返回。所以问题可能出在您的存储子系统上。

关于windows - 使用新项目创建目录的竞争条件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7024251/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com