We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 0efc559 commit abdd618Copy full SHA for abdd618
src/ImageSharp.Web/Middleware/ImageSharpMiddleware.cs
@@ -277,6 +277,12 @@ await WriteWorkers.GetOrAdd(
277
{
278
try
279
280
+ // Prevent a second request from starting a read during write execution.
281
+ if (ReadWorkers.TryGetValue(key, out var readWork))
282
+ {
283
+ await readWork.Value;
284
+ }
285
+
286
ImageCacheMetadata cachedImageMetadata = default;
287
outStream = new RecyclableMemoryStream(this.options.MemoryStreamManager);
288
IImageFormat format;
@@ -350,6 +356,7 @@ await WriteWorkers.GetOrAdd(
350
356
finally
351
357
352
358
await this.StreamDisposeAsync(outStream);
359
+ WriteWorkers.TryRemove(key, out var _);
353
360
}
354
361
}, LazyThreadSafetyMode.ExecutionAndPublication)).Value;
355
362
0 commit comments