Потокобезопасное обновление статических настроек в многопоточной среде
Условие задачи
Почему могут быть ошибки и как их исправить?
csharpclass H
{
public static string CrmUrl {get; private set;}
public static string CrmUser {get; private set;}
public static string CrmUserPassword {get; private set;}
private static object lockObj = new object();
public static async Task RefreshCrmSettings(string configFilePath)
{
try
{
Monitor.Enter(lockObj);
var lines = await File.ReadAllLinesAsync(configFilePath);
CrmUrl = lines[0];
CrmUser = lines[1];
CrmUserPassword = lines[2];
}
finally
{
Monitor.Exit(lockObj);
}
}
}