5.1 QThread的两种使用方式
QThread类用于创建和管理线程,它并不是线程本身。通过使用QThread,我们可以在应用程序中实现并发执行的任务,从而提高应用程序的性能和响应能力,能够有效地利用CPU资源,提高程序运行效率。且QThread创建和管理线程的方式是独立于平台的,不管是windows、linux、还是macOS都是适用的。QThread对象还支持信号槽机制,在不同线程之间进行数据传递变得更加方便快捷。同时也提供了一系列方法和属性来帮助我们对线程进行管理和控制。
它通常被用于处理需要长时间计算、耗时的IO操作或持续监听某些事件,以避免阻塞主线程,从而避免界面卡顿等问题。
下面说说如何使用QThread创建线程来服务我们的工作(参考Qt助手中的示例)。
(1)通过继承QThread,重写run方法;
下面示例中我们通过线程不断读取文件中的数据,然后更新到界面;