[发明专利]一种通信方式的优化方法及电子设备有效
| 申请号: | 201810011462.1 | 申请日: | 2018-01-05 |
| 公开(公告)号: | CN110012042B | 公开(公告)日: | 2022-01-04 |
| 发明(设计)人: | 杨亮;陈少杰;张文明 | 申请(专利权)人: | 武汉斗鱼网络科技有限公司 |
| 主分类号: | H04L67/141 | 分类号: | H04L67/141;H04L12/18;H04L67/60 |
| 代理公司: | 北京众达德权知识产权代理有限公司 11570 | 代理人: | 刘杰 |
| 地址: | 430000 湖北省武汉市东湖开*** | 国省代码: | 湖北;42 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 通信 方式 优化 方法 电子设备 | ||
1.一种通信方式的优化方法,其特征在于,所述方法包括:
在Mach微内核中注册一虚拟服务名称,并创建微内核的监控接口;
基于多个客户端的获取请求,将所述监控接口发送给多个客户端,使得所述多个客户端基于所述监控接口发送各自的连接请求给所述监控接口;
接收所述多个客户端发送的各自的连接请求;
利用微内核信息服务器的线程为每个连接请求对应创建微内核消息会话实例,并生成各微内核消息会话实例的连接应答消息发送给各连接请求对应的客户端;
检测所述各微内核消息会话实例是否有效,然后删除无效的微内核消息会话实例;
所述利用微内核信息服务器的线程为每个连接请求对应创建微内核消息会话实例,具体包括:
通过调用微内核信息服务器的allocSession函数,为各连接请求创建各自的一个MachMessageSession会话实例;
调用MachMessageSession的createFrom方法来初始化该各MachMessageSession会话实例,使各MachMessageSession会话实例包含有两个参数:对应的客户端的端口名,本地端口名;
所述生成各微内核消息会话实例的连接应答消息发送给各连接请求对应的客户端,包括:
将各MachMessageSession会话实例的本地端口名封装到各自的连接应答消息中,并发送给对应的客户端的端口。
2.如权利要求1所述的方法,其特征在于,所述注册一虚拟服务名称,并创建微内核Mach的监控接口,包括:
调用OSX系统的bootstrap_check_in函数,将虚拟服务名称对应的字符串注册到OSX系统中,并获取到所述监控接口。
3.如权利要求1所述的方法,其特征在于,所述接收所述多个客户端发送的各自的连接请求,具体包括:
利用微内核信息服务器的线程调用mach_msg系统函数接收来自各客户端的连接请求,其中各客户端的连接请求中携带有各客户端的端口名。
4.如权利要求1所述的方法,其特征在于,所述生成各微内核消息会话实例的连接应答消息发送给对应的客户端之后,所述方法还包括:
将各MachMessageSession会话实例放入到m_sessions列表中进行管理;
在recvSessionMsg函数中对m_sessions列表中的所有MachMessageSession进行读取操作,以获取对应的客户端发送的通信消息。
5.如权利要求1所述的方法,其特征在于,所述检测所述各微内核消息会话实例是否有效,然后删除无效的微内核消息会话实例,具体包括:
调用mach_port_type函数获取远程端口m_remotePort的类型type,如果type的值等于MACH_PORT_TYPE_DEAD_NAME那么表示该远程端口在其对应的客户端中已经被关闭,则对应的MachMessageSession会话实例已经无效;然后将无效的MachMessageSession会话实例删除。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于武汉斗鱼网络科技有限公司,未经武汉斗鱼网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810011462.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:物流数据传输系统及其方法
- 下一篇:一种基于地理位置的AR系统及其实现方法





