这个公共静态获取IP功能线程是否安全?使用HttpContext

时间:2012-12-21 17:42:54

标签: c# function thread-safety public httpcontext

IIS 7.5 ASP.net 4.0 C#4.0

这里的功能是线程安全吗?假设同时有来自不同访问者的1000个不同的呼叫

public static string ReturnIpAddress()
{
    string srUserIp = "";
    try
    {
        if (HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"] != null)
        {
            srUserIp = HttpContext.Current.Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString();
        }
        if (string.IsNullOrEmpty(srUserIp))
        {
            srUserIp = HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"].ToString();
        }
    }
    catch
    {

    }
    return srUserIp;
}

1 个答案:

答案 0 :(得分:2)

这是超级安全的。您不更改任何数据,它是静态的,它查询请求对象,这是不可变的。