[发明专利]客户端以及数据通信方法在审
申请号: | 201510195896.8 | 申请日: | 2015-04-23 |
公开(公告)号: | CN104917817A | 公开(公告)日: | 2015-09-16 |
发明(设计)人: | 谭良;胡波;程虹锡;姚治菊 | 申请(专利权)人: | 四川师范大学 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L12/26 |
代理公司: | 北京超凡志成知识产权代理事务所(普通合伙) 11371 | 代理人: | 饶钱 |
地址: | 610101 *** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 客户端 以及 数据通信 方法 | ||
1.一种数据通信方法,其特征在于,应用于数据通信系统,所述数据通信系统包括客户端以及服务器端,所述数据通信方法包括:
所述客户端建立守护线程,建立的所述守护线程在后台运行;
所述客户端获得用于连接所述服务器端的连接对象;
所述客户端指示所述连接对象中的非阻塞通道在守护线程中的选择器中注册;
所述客户端指示所述选择器对所述选择器中已经注册的所述非阻塞通道的可读和可写操作进行轮询监听;
如果所述非阻塞通道的可读操作可以执行,则所述客户端执行所述非阻塞通道的读操作,如果所述非阻塞通道的可写操作可以执行,则所述客户端执行所述非阻塞通道的写操作。
2.根据权利要求1所述的数据通信方法,其特征在于,所述客户端设置有用于存储所述连接对象的连接对象缓存容器,所述客户端获得用于连接所述服务器端的连接对象,包括:
所述客户端查询所述连接对象缓存容器中是否有已建立的所述连接对象;
如果所述连接对象缓存容器为空,所述客户端建立新的连接对象,通过所述新的连接对象采用非阻塞的方式连接所述服务器端;
所述客户端获得所述新的连接对象。
3.根据权利要求2所述的数据通信方法,其特征在于,所述客户端采用非阻塞的方式连接所述服务器端,包括:
在客户端采用非阻塞的方式连接服务器端的过程中,当所述客户端与所述服务器端连接失败时,所述客户端以预设的阈值时间为间隔重新以非阻塞的方式连接所述服务器端。
4.根据权利要求1-3任一所述的数据通信方法,其特征在于,所述客户端建立守护线程,建立的所述守护线程在后台运行,包括:
所述客户端采用懒加载的模式建立守护线程。
5.一种客户端,其特征在于,应用于所述数据通信系统,所述数据通信系统包括服务器端,所述客户端设置包括:
守护线程建立单元,用于建立守护线程,建立的所述守护线程在后台运行;
连接对象获得单元,用于获得用于连接所述服务器端的连接对象;
非阻塞通道注册单元,用于指示所述连接对象中的非阻塞通道在守护线程中的选择器中注册;
非阻塞通道轮询单元,用于指示所述选择器对所述选择器中已经注册的所述非阻塞通道的可读和可写操作进行轮询监听;
数据读操作单元,用于如果所述非阻塞通道的可读操作可以执行,执行所述非阻塞通道的读操作;
数据写操作单元,用于如果所述非阻塞通道的可写操作可以执行,执行所述非阻塞通道的写操作。
6.根据权利要求5所述的客户端,其特征在于,所述守护线程建立单元,包括:
线程懒加载子单元,用于采用懒加载的模式建立守护线程。
7.根据权利要求5所述的客户端,其特征在于,所述数据通信系统设置有接对象容器,所述连接对象获得单元,包括:
连接对象缓存容器遍历子单元,用于查询所述连接对象缓存容器中是否有已建立的连接对象;
连接建立子单元,用于如果所述连接对象缓存容器为空,建立新的连接对象,通过所述新的连接对象采用非阻塞的方式连接所述服务器端。
8.根据权利要求7所述的客户端,其特征在于,所述连接建立子单元,包括
重连接子单元,用于在客户端采用非阻塞的方式连接服务器端的过程中,当所述客户端与所述服务器端连接失败时,以预设的阈值时间为间隔重新以非阻塞的方式连接所述服务器端。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于四川师范大学,未经四川师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510195896.8/1.html,转载请声明来源钻瓜专利网。