无用单元收集带来的后果是:我们无须再依赖于一个类的Terminate事件。事实上,如果线程被阻塞了,Terminate事件也不可能得到执行,这也就是所谓的不确定性终止,与它相对的是由COM提供的确定性终止。确定性终止的缺乏和由于无用单元收集而引起的对内存单元的重新调度和紧凑在互联网上的新闻组中引起了热烈的讨论。我认为这些限制会引起你的不快,因为你已经习惯了确定性终止,也许你并不依赖于Terminate事件而认为这无关紧要。无用单元收集程序并非是万能的,在使用时仍然会有许多限制。
从引用计数到无用单元收集只是说明Visual Studio.NET的基础架构不再是COM的一部分。在VB.NET中,你仍然可以使用ActiveX服务器、ActiveX控制等COM对象,但必须通过适当的"wrapper"才行。提到"wrapper"这个词,就可能意味着性能上的折扣和执行上的差异。如果要移植一个使用了大量的COM对象的软件,就需要进行很好的测试和规划,甚至重新设计部分代码才能确保移植成功。坦率地说,你会遇上挫折,还记得把VBX向OCX移植的恶梦吗?
156
文章整理:西部数码--专业提供域名注册、虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!




