在我的网站上,我使用一个控制器来生成图像的缩略图。我的代码看起来像这样:
var filePath = getThumbnailPath();
if (!File.Exists(filePath)
{
... create thumbnail
}
return new Filestream(...)
问题是,如果两个用户请求相同的缩略图,并且如果没有创建缩略图,我将在创建它时得到异常。如何在不引入太多开销的情况下有效地使用文件名对象上的锁?
在Aristos的评论之后重构了代码:
Mutex m = new Mutex(false, originalImagePath
我在Django项目中使用wand,从不同类型的文件中生成缩略图,例如pdf,所有的缩略图生成过程都在内存中完成,源文件是从请求中获取的,缩略图保存到一个临时文件中,然后Django FileFiled将图像保存在正确的路径中,但生成的缩略图保持初始大小,这是我的代码:
with image.Image(file=self.content.file, format="png") as im: # self.content is a django model FileField didn't saved yet, so the file inside is still i
我只是个初学者,所以请温文点。我得到了以下代码,它可以完美地上传视频文件。我要求它同时保存一个缩略图..有什么想法吗? 下面的“保存缩略图”代码在上传图像时起作用。它完美地生成了缩略图,但当我上传视频时就不会了,因为它显然是在尝试使用图像。 Protected Sub AjaxFileUpload1_UploadComplete(sender As Object, e As AjaxControlToolkit.AjaxFileUploadEventArgs) Handles AjaxFileUpload1.UploadComplete
'Save the original