作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
牢记这些
- Foreach
我无法解决这个问题...这段代码在 ASP.NET 中是“线程安全的”吗?
public static bool IsCookieMissing()
{
foreach (string cookieKey in HttpContext.Current.Request.Cookies.AllKeys)
{
if (cookieKey.EndsWith("cookie_name"))
{
return false;
}
}
return true;
}
最佳答案
从技术上讲,是的,这段代码是线程安全的。
HttpContext.Current返回与当前请求关联的上下文。尽管 IIS 可能使用多个线程来处理给定请求 ( thread agility ),但它不会并行运行这些线程(它只会在异步 I/O 期间切换线程)。
因此,不会有超过一个线程同时访问HttpContext.Current.Request.Cookies
,这里不需要加锁。
关于c# - 在静态方法线程安全的 HttpContext.Current 上使用 foreach 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11191437/
我是一名优秀的程序员,十分优秀!