生产者/消费者设计模式
发布时间:2014/6/20 21:36:39 访问次数:681
生产者/消费者是主,V0402MHS12NR从设计模式的一种,它将多个并行循环分为生产数据和消费数据的两类循环,循环间采用队列的方式进行通信,这样当产生数据的速度比处理数据的速度快时,队列的缓冲作用保证数据不会丢失。这种模式对于处理需要较长时间才能完成的用户界面事件非常有效。
图3-7所示为生产者/消费者设计模式的结构图。其中一个循环通过计算或数据采集等方式产生数据并将数据放入队列;另一循环一直等待直到队列中有数据,然后取出队列中的第一个数据并处理。
我们以一个打印控制台的应用程序为例说明这种设计模式的使用。在打印过程中,我们可以随时单击“加入新的打印任务”按钮进行打印,虽然实际的每次打印操作要比单击按钮操作慢得多,但打印任务可以排队等待直到前一个任务完成。程序框图如图3-8所示,在程序设定了最多打印任务数不超过20个。
图3-8打印控制台程序框图
生产者/消费者是主,V0402MHS12NR从设计模式的一种,它将多个并行循环分为生产数据和消费数据的两类循环,循环间采用队列的方式进行通信,这样当产生数据的速度比处理数据的速度快时,队列的缓冲作用保证数据不会丢失。这种模式对于处理需要较长时间才能完成的用户界面事件非常有效。
图3-7所示为生产者/消费者设计模式的结构图。其中一个循环通过计算或数据采集等方式产生数据并将数据放入队列;另一循环一直等待直到队列中有数据,然后取出队列中的第一个数据并处理。
我们以一个打印控制台的应用程序为例说明这种设计模式的使用。在打印过程中,我们可以随时单击“加入新的打印任务”按钮进行打印,虽然实际的每次打印操作要比单击按钮操作慢得多,但打印任务可以排队等待直到前一个任务完成。程序框图如图3-8所示,在程序设定了最多打印任务数不超过20个。
图3-8打印控制台程序框图
热门点击
- 12C总线具有如下基本特征
- 8031对外部ROM/RAM的连接
- 单片机的分类
- 特殊功能寄存器
- 无条件绝对转移指令
- 自动打开DataSocket Server
- 二次熔锡问题
- 单分支结构
- 带符号数表示
- 慢速冷却与快速冷却速率温度曲线参数比较
推荐技术资料
- 自制智能型ICL7135
- 表头使ff11CL7135作为ADC,ICL7135是... [详细]