Crazy.Coder --- have more fun in coding

世界上唯有两样东西能使我们的心灵受到深深的震撼,一是我们头顶上璀灿的星空,另一个便是人们内心深处的道德法则。 -- 康德
小心使用Application.DoEvents

记得在之前的项目中(WinForm),因为要在用户界面上显示大量的数据,为了给用户更好的使用体验,让软件界面在加载数据时不至于“呆若木鸡”,在很多地方都使用了Application.DoEvents。现在回过头看看,真是满头是汗呀! :(

那时只知道Application.DoEvents可以让应用程序的主线程暂停来处理运行其它逻辑(比如刷新界面控件),对于潜在的问题根本没有了解。现在又重新学习了Application.DoEvents的原理和使用中需要注意的问题。其实我们的问题通过异步调用/多线程可以比较好的解决,所以如果可以避免,还是尽量避免使用Application.DoEvents吧。

 

国庆快乐!

~ Crazy ~

Update:
some another discussions:

http://www.codinghorror.com/blog/archives/000370.html
and http://www.codinghorror.com/blog/archives/000159.html

posted on 2006-09-30 12:38  CrazyCoder  阅读(8300)  评论(1编辑  收藏  举报