multithreading - 如何使用线程获得稳定、快速的 UI?

标签 multithreading user-interface

我最近在看this video on Google Chrome以极大的兴趣。它解释了 Google Chrome 使用一个线程进行 IO,一个用于打开文件,一个用于模块间通信。

我想我可以为我自己的应用程序使用类似的东西——目前非常困惑。

我想知道是否有任何关于此类线程化任务划分的最佳实践或模式的好文章?

最佳答案

只要您的应用程序具有可以分为不同组的任务,它就是多线程的候选对象。请注意,这是一个危险的游戏,虽然 - 对于每篇你可以找到优点的文章,有两篇关于被多线程实现咬伤 - 它可以创建仅在某些配置(在用户计算机上)中发生的错误,或者更糟的是,不能在调试器中复制,因为减慢执行速度的行为足以导致错误无法出现(竞争条件因这种行为而臭名昭著)。

撇开这个警告不谈,多线程可以极大地提升应用程序的实际性能和感知性能。这些是特定于 .NET 的,但提供了一个通用的初级读物,解释了后台线程的优势并使您的 UI 保持响应:

关于multithreading - 如何使用线程获得稳定、快速的 UI?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2791055/

相关文章:

python - 使用线程和类设计的初学者程序

multithreading - 为什么在递归函数调用中使用信号量时会出现死锁

python - 使用 plot.ly Dash 在等待结果时显示加载符号

java - 启动窗口在 mac 中不起作用

user-interface - 使用 HTML5 的新输入类型显示表单错误

c# - 从另一个线程更改 viewmodel 属性

multithreading - Python 多处理 如何使脚本更快?

ios - GCD 和 iOs 中的多个委托(delegate)

android - View 的填充和边距之间的区别

python - 从 PyGTK 中的 gtk.Entry 获取值