[发明专利]一种串行事件转换成并行事件的方法无效
申请号: | 201310322497.4 | 申请日: | 2013-07-29 |
公开(公告)号: | CN103345385A | 公开(公告)日: | 2013-10-09 |
发明(设计)人: | 程卫双 | 申请(专利权)人: | 北京汉邦高科数字技术股份有限公司 |
主分类号: | G06F9/38 | 分类号: | G06F9/38 |
代理公司: | 北京中北知识产权代理有限公司 11253 | 代理人: | 冯梦洪 |
地址: | 100089 北京市海淀区长*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 串行 事件 转换 并行 方法 | ||
1.一种串行事件转换成并行事件的方法,其特征在于:包括事件定义、事件接收处理、事件分发三个步骤,其中:
(1)事件定义步骤定义事件数据结构,事件数据结构包括事件类型标识号、原始事件所需参数组成的数据结构指针、原始事件所需参数组成的数据结构长度、事件分发函数指针链表、当前事件的引用计数;
(2)事件接收处理步骤包括:
(2.1)定义一个事件队列、一个事件队列监视线程、一个内存池、一个线程池;
(2.2)从事件源处接收事件所需参数;
(2.3)根据参数大小从内存池中申请内存并初始化步骤(1)的事件数据结构;
(2.4)把事件数据结构存放在事件容器中;
(3)事件分发步骤包括:
(3.1)从事件容器中取出事件数据结构;
(3.2)利用线程池技术把事件数据结构中的原始参数分发到相应的分发函数中。
2.根据权利要求1所述的串行事件转换成并行事件的方法,其特征在于:事件分发步骤还包括:
(3.3)判断分发函数执行完毕事件数据结构中的事件引用计数是否为零,是则把该事件数据结构回收到内存池中,否则事件引用计数减1。
3.根据权利要求2所述的串行事件转换成并行事件的方法,其特征在于:当回调函数是网络回调函数且存在网络音视频帧数据时,该方法包括事件定义、事件接收处理、事件分发三个步骤,其中:
(a)事件定义步骤定义事件数据结构,该数据结构包括事件类型标识号,由音视频帧、通道号、多媒体流类型以及线程上下文组成参数结构体的指针,参数结构体的长度,音视频消费者的分发函数指针链表,当前事件的引用计数;
(b)事件接收处理步骤包括:
(b.1)定义一个事件队列、一个事件队列监视线程、一个内存池、一个线程池;
(b.2)从网络回调函数中获取音视频帧、通道号、多媒体流类型以及线程上下文,把这些参数组成一个参数结构体,根据该结构体的长度和分发函数指针链表长度计算出事件数据结构所需内存的大小,事件的引用计数初始化为分发函数指针链表长度;
(b.3)从内存池中申请出该大小的内存用来保存该事件数据结构;
(b.4)利用事件添加函数接口把该事件数据结构的指针插入到事件队列中;
(c)事件分发步骤包括:
(c.1)启动一个事件监视线程来实时监视事件队列,如果发现事件队列中有事件到来,就取出该事件数据结构指针,从中取出参数结构体和分发函数指针链表;
(c.2)利用线程池技术依次把分发函数和参数结构体组成任务插入到线程池内部的工作队列中;
(c.3)任务执行完毕时事件数据结构中的引用计数减1。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京汉邦高科数字技术股份有限公司,未经北京汉邦高科数字技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310322497.4/1.html,转载请声明来源钻瓜专利网。