Qt中的线程支持
Qt通过平台无关的线程类、线程安全的发布事件方式和线程间信号-槽连接提供线程支持。这使得开发可移植的多线程Qt应用程序并利用多处理器机器变得容易。多线程编程也是在没有冻结应用程序用户界面的情况下执行耗时操作的有用范例。
Qt的早期版本提供了一种构建不带线程支持的库的选项。自Qt 4.0起,线程始终启用。
主题:
这些文章假定读者已具备关于多线程应用程序的基本知识。
线程类
这些类与线程应用程序相关。
在并行中选择序列中的值并将它们组合 | |
在并行中将序列中的值进行转换并将它们组合 | |
在单独的线程中运行任务的一种简单方法 | |
在单独的线程中运行任务的可配置方法 | |
对整数进行平台无关的原子操作 | |
模板类,提供对指针的平台无关的原子操作 | |
异步计算的结果 | |
简化QFuture同步的便利类 | |
允许通过信号和槽监控QFuture | |
线程间的访问序列化 | |
简化锁定和解锁互斥锁的便利类 | |
用于将计算结果存储到QFuture中以便访问的方式 | |
简化对读写锁进行读访问的锁定和解除锁定 | |
读写锁定 | |
线程间的访问序列化 | |
所有可运行对象的基类 | |
计数信号量 | |
异常安全地延迟QSemaphore::release()调用 | |
管理线程的平台无关方式 | |
管理QThread集合 | |
线程数据存储 | |
同步线程的条件变量 | |
简化读写锁的锁定和解除锁定的便利类 | |
高级API,使得在不使用底层线程原语的情况下编写多线程程序成为可能 | |
用于调整任务参数 | |
QtFuture::WhenAnyResult用于表示QtFuture::whenAny()的结果 | |
注意: Qt的线程类使用原生线程API实现;例如,Win32和pthreads。因此,它们可以与同一原生API的线程一起使用。
© 2024 Qt公司有限。此处包含的文档贡献均为各自所有者的版权。此处提供的文档是根据自由软件基金会发布的GNU自由文档许可协议第1.3版的条款授权。Qt和相关标志是芬兰和/或其他国家的Qt公司的商标。所有其他商标均为其各自所有者的财产。