没有合适的资源?快使用搜索试试~ 我知道了~
基于 QWorker 的多线程编程V1.11
需积分: 0 0 下载量 56 浏览量
2022-08-04
13:57:15
上传
评论
收藏 701KB PDF 举报
温馨提示
试读
77页
第一章引言QWorker 是 QDAC 项目带给大家的一套多线程并行编程框架。它基于作业的视角来规划作业多线程编程,简化多线程编程的步骤和方法和交互手法。首先,
资源详情
资源评论
资源推荐
基于 QWorker 的多线程编程
作者:
swish
版本:
1.1
末次修订日期:
2015-4-2
QDAC 开发组 swish 作品
官方网站:
http://www.qdac.cc
官方 QQ 群:
250530692
开源网址:
http://sourceforge.net/projects/qdac3
QWorker 专题:
http://www.qdac.cc/?p=191
首先欢迎各个使用 QDAC 相关的各项组件!尤其感谢各位 QDAC 官方群的
朋友的集思广义、测试和赞助支持,有你们的支持,才有 QDAC 的不断进步。
QDAC 是一个免费的开源项目,您不需要为使用本项目的内容支付任何费
用。如果您觉得本源码对您有帮助,愿意赞助本项目的发展(非强制),以使作
者不为生活所迫,有更多的精力为您呈现更好的作品,可以赞助作者。
QDAC 允许您自由的复制、分发、修改本源码,但您的修改应该反馈给作者,并
允许作者在必要时,合并到本项目中以供使用,合并后的源码同样遵循 QDAC
版权声明限制。
您的产品的关于中,应包含以下的版本声明
:
本产品使用的 XXXX 来自 QDAC 项目,版权归作者所有,官方网站:
www.qdac.cc。
【注意】
作者对本项目的品质不提供任何担保,您在使用本项目的源码之前,请确认
这一点。
QDAC
开发组不为由此给您及您客户造成的任何损失承担任何法律及道
义责任。
【技术支持】
如有技术问题,您可以加入 QDAC 官方 QQ 群 250530692 共同探讨,但请
注意这是一个技术群,偶尔风花雪月没什么关系,但不要刷屏造成大家的困扰,
同时,不要进行任何人身语言攻击,否则将被 T 出群。
本项目目前没有提供任何帮助文件,所有的函数等我尽量在源码中加入足够的注
释,以便大家了解。
如有其它问题,可以发邮件到
。
扫描下面的二维码加入 QDAC 官方 QQ 群:
如果需要单独培训或定制,可以作者单独联系,费用根据实际情况另行计算。
【赞助】
本项目接受各位热心朋友的赞助,赞助方式:
支付宝:
建设银行:
户名:管耸寰
账号:4367 4209 4324 0179 731
开户行:建设银行长春团风储蓄所
目 录
第一章 引言
.......................................................................................................................................
5
第二章 不同的作业视角
...................................................................................................................
8
第三章 第一个作业
.........................................................................................................................
11
第四章 传递参数给作业
.................................................................................................................
15
第五章 后台线程与用户界面交互
.................................................................................................
19
第六章 清理现场
.............................................................................................................................
23
第七章 线程定时器
.........................................................................................................................
26
第八章 状态机:信号与广播
.........................................................................................................
33
第九章 作业分组
.............................................................................................................................
38
第十章 使用分组作为业务处理队列
.............................................................................................
47
第十一章 工作流控制
.....................................................................................................................
51
第十二章 For 并行
.........................................................................................................................
53
第十三章 计划任务
.........................................................................................................................
58
第十四章 状态跟踪
.........................................................................................................................
61
第十五章 同步与锁定
.....................................................................................................................
72
第十六章 附加选项
.........................................................................................................................
74
第一章 引言
QWorker 是 QDAC 项目带给大家的一套多线程并行编程框架。它基于
作业的视角来规划作业多线程编程,简化多线程编程的步骤和方法和交互
手法。
首先,我们要明白我们为什么需要多线程并行编程?
我们之所以使用多线程编程,一般目的不外乎下面两个:
1、避免程序界面假死带来的恶劣用户体验。
2、充分利用现代计算机的处理资源,来加快业务的处理速度。
当然,您可能有更好更多的理由来做多线程编程,但上面的这两个理
由对于一般的人来说足够了。
接下来,一个新的问题来了,我们为什么要什么 QWorker 而不是系统
自带的多线程框架来编程?
这个理由实际上很简单,使用 QWorker 会进一步简化你的编程逻辑的
设计,使你更专注于业务流程的规划和实现,而不去管理线程池及处理资
源的调度问题。
那么,什么是作业?
在 QWorker 中,所谓的作业就是一个逻辑上的业务处理单元。我们要
实现一个复杂的任务时,可以将其分解成一到多个小的任务,每个任务由
一个函数来管理,这个函数我们就可以将其理解为一项作业,而这些函数
的组合就构成了一个作业分组。作业我们可以让其运行在主线程或者后台
线程,注意一点,主线程不适合进行长时间作业,那样会造成主线程阻塞,
造成假死的现象,影响用户体验。
现在看看,QWorker 为我们提供了什么呢?
1、一个跨平台的异步执行体系
一旦我们通过 Workers.Post 直接来投寄一个异步作业,这个作业将
在后台被计划执行。
剩余76页未读,继续阅读
八位数花园
- 粉丝: 45
- 资源: 281
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0