有时它你以为你知道,让你的头buzzz简单的事情....Asp.net C#静态方法线程安全的错误处理
我有一个使用静态方法一个Asp.Net(形式)申请一个非静态类在PostBack上做一些处理。这些方法需要返回布尔值。
当静态方法出现错误时,我宁愿不要将异常抛回页面级代码,而是在静态方法中显式处理它并返回false。
我可能过度思考这一点,但,如果MyClass的有一个静态的ErrorMessage场,在页面中使用这样的:
if(!MyClass.DoSomething){
errorLabel.Text = MyClass.ErrorMessage; //Static ErrorMessage is set
}
我是正确的的errorMessage被有效地线程安全的,因为MyClass的是非静态,页面生活在一个特定的HttpContext和变量销毁PostBack?
有没有原因,或者更好的方法?
对,想也许我正在说自己陷入沉默......我可能只是使方法非静态并实例化MyClass。这是否有效,无论它是否在Asp.Net页面中,是的? – Serexx 2012-02-14 23:23:24
@Serexx:如果你不共享实例,那么是的,它将是线程安全的。 – 2012-02-14 23:32:35