如何使代码线程安全或保持线程安全?

时间:2019-06-11 19:15:54

标签: c# multithreading thread-safety

我在先前的堆栈溢出中读到以下内容:“如果您的静态方法未更改任何成员变量,并且未在其参数上调用变异方法,则它是可重入的,因此是线程安全的”,我相信我的代码会遵守该规则,但我只是在寻求一些确认。下面是我的代码。

public static class Extensions
{
    private static Logger _log = LogManager.GetLogger("PortalLog");
    public static void NLoglogger(Exception ex, string loginId)
   {
        if (ex.InnerException == null)
        {
            LogEventInfo errorEvent = new LogEventInfo(LogLevel.Error, "PortalLog", ex.Message);
            errorEvent.Properties["loginid"] = loginId ;
            _log.Log(errorEvent);
        }
        else
        {
            LogEventInfo errorEvent = new LogEventInfo(LogLevel.Error, "PortalLog", ex.Message + "Inner Message: " + ex.InnerException.Message);
            errorEvent.Properties["loginid"] = loginId;
            _log.Log(errorEvent);
        }

    }
}

0 个答案:

没有答案