XSLT存档  

不及格的程序员-八神

 查看分类:  ASP.NET XML/XSLT JavaScripT   我的MSN空间Blog
作者:不及格的程序员-八神


应用程序域,并不总是给应用程序带来隔离措失.

1 不可靠的CLR同步机制MethodImplOptions.Synchronized
        目前众所周知的在写线程同步代码时,不要锁定类型对象以及字符串常量.
2 应用程序域(AppDomain)同样的缺点:[LoaderOptimizationAttribute:LoaderOptimization.MultiDomain]
        这个属性被应用应用于进程的入口点方法(void Main),
        CLR支持的这种机制(共享列集:marshal-by-bleed,为了节省内存),可以将不同AppDomain中的引用指向内存中同一个CLR对象.

        这样的结果就是两个AppDomain域中的代码都可以在这个对象上执行锁定,而导至死锁,应用程序域将不具备应用程序隔离效应之说,而且你不能卸载AppDomain.
        这些对象可以是类对象(typeof(myClass)),字符串("abc"),原理同第1点所述.

...

这样的bug,在今后的clr版本中可能仍然存在,要考虑兼容性,如果被修复代价相当高.

posted on 2010-05-12 22:44  不及格的程序员-八神  阅读(1923)  评论(1编辑  收藏  举报