Нужно ли использовать оператор lock при записи файла в .net 5 api??? c# (код ниже)
public static async Task<string> SaveImageAsync(string base64)
{
var normalizedBase64 = base64.Substring(base64.LastIndexOf(',') + 1);
var bytes = Convert.FromBase64String(normalizedBase64);
var newFileName = Guid.NewGuid() + GetFileExtension(normalizedBase64);
await File.WriteAllBytesAsync(Path.Combine(Directory.GetCurrentDirectory(), "wwwroot", newFileName), bytes);
return newFileName;
}
Ответы (1 шт):
Автор решения: aepot
→ Ссылка
Судя по коду, каждый вызов метода будет работать с уникальным файлом. То есть разделяемых ресурсов здесь у вас нет.
А следовательно и не требуется обеспечение потокобезопасности.
Если потребуется синхронизировать доступ к общим файлам, то можно так: