diff --git a/src/TorchVision/File.cs b/src/TorchVision/File.cs index ea0c48cff..90cbe6daf 100644 --- a/src/TorchVision/File.cs +++ b/src/TorchVision/File.cs @@ -33,7 +33,7 @@ public static async Task read_file_async(string filename) { byte[] data; - using (FileStream stream = File.Open(filename, FileMode.Open)) { + using (FileStream stream = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.Read)) { data = new byte[stream.Length]; await stream.ReadAsync(data, 0, data.Length); } diff --git a/src/TorchVision/IO/Image.cs b/src/TorchVision/IO/Image.cs index 691d24b7f..4bc995969 100644 --- a/src/TorchVision/IO/Image.cs +++ b/src/TorchVision/IO/Image.cs @@ -136,7 +136,7 @@ public enum ImageReadMode /// public static Tensor read_image(string filename, ImageReadMode mode = ImageReadMode.UNCHANGED, Imager imager = null) { - using (FileStream stream = File.Open(filename, FileMode.Open)) + using (FileStream stream = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.Read)) return (imager ?? DefaultImager).DecodeImage(stream, mode); } @@ -167,7 +167,7 @@ public static Tensor read_image(Stream stream, ImageReadMode mode = ImageReadMod public static async Task read_image_async(string filename, ImageReadMode mode = ImageReadMode.UNCHANGED, Imager imager = null) { - using (FileStream stream = File.Open(filename, FileMode.Open)) + using (FileStream stream = File.Open(filename, FileMode.Open, FileAccess.Read, FileShare.Read)) return await (imager ?? DefaultImager).DecodeImageAsync(stream, mode); }