QtConcurrent

yanboo 发表于 2010-06-10 11:40:00

Qt的多线程支持

Qt通过 平台独立的线程类,线程安全的事件投递,线程间signal-slot连接这几个技术实现多线程支持。 利用这些技术使得Qt能容易地开发出轻巧的多线程应用程序。多线程编程也能解决处理耗时操作时UI不能及时响应的问题。

早期的Qt多线程支持是编译时的一个可选项。从4.0开始,Qt的线程支持始终提供。


Concurrent Programming

名空间QtConcurren提供了一些高级API,使得写多线程程序可以不再使用像互斥、读写锁、等待条件、信号量等低级的多线程命令。用QtConcurrent写的程序可以根据内核数量自动调整线程数。这意味着今天写的应用程序将来可以部署在多核系统上。

QtConcurrent包含处理并行表的API( 函数式编程语言的风格),包括共享内存(非分布式)系统的映射归并和过滤归并的实现,还有GUI程序中管理异步运算的一些类:

Qt Concurrent supports several STL-compatible container and iterator types, but works best with Qt containers that have random-access iterators, such as QList or QVector. The map and filter functions accept both containers and begin/end iterators.

曾经的这一天...

最新评论

发表评论

*昵称

已经注册过? 请登录

Email
网址
*评论