gpt4 book ai didi

c# - FileNotFoundException 抛出时间太长,有没有办法缩短超时?

转载 作者:行者123 更新时间:2023-11-30 12:31:10 25 4
gpt4 key购买 nike

我有一些代码可以像这样加载图像:

 using (var sourceImage = Image.FromFile(fullImagePath))
{
return new Bitmap(sourceImage);
}

有时图像会被错误命名或不在预期的位置,并正确抛出 System.IO.FileNotFoundException。但是,抛出此异常通常需要大约 1 秒的时间。当我的代码抓取几百张图片并且其中几张丢失时,这会为该过程增加大量时间。

如果需要抛出异常,有没有办法加快异常?

我能想到的唯一替代方案是先检查图像是否存在,但这会在每次获取图像时增加几十毫秒,这也不是一个好的解决方案。

澄清:fullImagePath 包含的示例是:

\\ImageSrv\secure\sites\2756\27074\760789\bthumb\1287.jpg

同一目录中可能有数百个其他图像。

结论:看起来检查文件是否存在是最好的方法。

最佳答案

  1. 自己防止异常。检查文件是否存在而不是让 Image.FromFile 失败并通过异常 shenennigans
  2. 将缓存保留在内存中,以消除对额外硬盘驱动器调用的必要性
  3. 如果情况需要,使用 FileSystemWatcher 更新缓存

关于c# - FileNotFoundException 抛出时间太长,有没有办法缩短超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14281729/

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