Gig*_*yte 5 c# asp.net globalization asp.net-mvc multithreading
这是我的第一篇文章,所以请原谅任何错误的地方。
我们正在开发一个 ASP.Net MVC 5 应用程序,为最终用户提供多种文化。和在Global.asax.cs 文件的Thread.CurrentThread.CurrentCulture中Thread.CurrentThread.CurrentUICulture设置。Application_AcquireRequestState()
据我所知,对 Web 应用程序的每个请求都会触发一个新线程。我创建了一个静态类,可以根据文化轻松访问一些日期格式字符串等。
我的问题是,从可能具有不同文化的请求线程上下文(例如控制器)访问此静态类的方法和获取访问器是否存在任何问题?静态类会有哪些文化?
班级本身没有任何文化。访问此类的线程具有区域性,并且该线程的区域性在类(静态或非静态)中使用。
静态实际上是指类的状态如何在不同线程之间共享。您的静态类可以是无状态的(即它不存储数据,通常是静态类的辅助类型的情况),这将为您带来更少的问题。
如果您在静态类中存储任何状态,则必须小心,原因有两个:
一般来说,在多线程环境中控制对静态保存数据的访问比较困难,
如果您存储的任何数据是特定于区域性的,那么在使用具有不同区域性的线程时,您可能会在解释这些数据时遇到问题。
| 归档时间: |
|
| 查看次数: |
1102 次 |
| 最近记录: |