1、如果WinForm程序中使用了线程,而线程调用的代码中会抛出异常,该异常没有任何Try块处理。就会导致程序从主线程中跳出,导致WinForm程序突然崩溃性关闭。
2、程序读写某些外部资源,比如数据库、串口、并口、网络等。当这些资源发生堵塞或者出现问题,有可能会导致WinForm程序长时间处于等待状态,程序就会类似于死机现象。
3、写程序的时候,程序出现逻辑错误,导致死循环,或者线程死锁。如果该程序是在主线程中,就会导致WinForm程序死机。
相关文章
- winform 练习多线程
- 我的应用程序在ipad上崩溃了,因为发布对象
- 说好的多线程同时写入同一变量会崩溃呢,为什么没问题??大家进来看看...
- Apache崩溃时出现R6016错误,线程数据空间不足
- 漫话JavaScript与异步·第三话——Generator:化异步为同步 一、Promise并非完美 我在上一话中介绍了Promise,这种模式增强了事件订阅机制,很好地解决了控制反转带来的信任问题、硬编码回调执行顺序造成的“回调金字塔”问题,无疑大大提高了前端开发体验。但有了Promise就能完美地解决异步问题了吗?并没有。 首先,Promise仍然需要通过then方法注册回调,虽然只有一层,但沿着Promise链一长串写下来,还是有些让人头晕。 更大的问题在于Promise的错误处理比较麻烦,因为Promise链中抛出的错误会一直传到链尾,但在链尾捕获的错误却不一定清楚来源。而且,链中抛出的错误会fail掉后面的整个Promise链,如果要在链中及时捕获并处理错误,就需要给每个Promise注册一个错误处理回调。噢,又是一堆回调! 那么最理想的异步写法是怎样的呢?像同步语句那样直观地按顺序执行,却又不会阻塞主线程,最好还能用try-catch直接捕捉抛出的错误。也就是说,“化异步为同步”!
- foreach中不能SaveChanges()吗?不允许启动新事务,因为有其他线程正在该会话中运行。
- iOS中多线程的经典崩溃总结大全
- c# winform 实现多线程
- c# winform编程之多线程ui界面资源修改总结篇【转】
- c#中Winform实现多线程异步更新UI(进度及状态信息)