1.一种基于Socket的客户端跨平台网络通信方法,其特征在于,包括下述步骤:创建套接字,将套接字接口与服务端的地址信息进行绑定,并在内存中创建缓存区;
初始化消息队列,将通信数据封装成消息,并将所述消息添加至所述消息队列中;
从所述消息队列中将所述消息依次取出,将所述消息封装成输入输出事件;
将所述输入输出事件进行注册,并对所述输入输出事件的状态进行监听;及在监听到触发所述输入输出事件时,将所述输入输出事件缓存至所述缓存区,并通过所述套接字接口发送至所述服务端。
2.根据权利要求1所述的基于Socket的客户端跨平台网络通信方法,其特征在于,所述将所述消息封装成输入输出事件的步骤包括:创建所述输入输出事件的结构体;
设置与所述消息对应的第一回调函数,并设置事件状态为初始化状态;
将所述第一回调函数的地址以及所述初始化状态写入所述结构体对应的字段。
3.根据权利要求2所述的基于Socket的客户端跨平台网络通信方法,其特征在于,所述将所述输入输出事件进行注册,并对所述输入输出事件的状态进行监听的步骤包括:将所述输入输出事件注册至事件调度中心,并将所述输入输出事件的事件状态设置为未决状态;
通过所述事件调度中心将所述输入输出事件发送给事件多路输出,由所述事件多路输出对所述输入输出事件的状态进行监听。
4.根据权利要求2或3所述的基于Socket的客户端跨平台网络通信方法,其特征在于,所述在监听到触发所述输入输出事件时,将所述输入输出事件缓存至所述缓存区,并通过所述套接字接口发送至所述服务端的步骤包括:确定所述输入输出事件满足触发条件,将所述输入输出事件的事件状态修改为激活状态;
通过所述事件调度中心对所述输入输出事件进行调度,触发所述输入输出事件绑定的第一回调函数;
使用所述第一回调函数将所述输入输出事件内封装的消息缓存至所述缓存区,并通过所述套接字接口发送至服务端。
5.根据权利要求1所述的基于Socket的客户端跨平台网络通信方法,其特征在于,在所述将所述消息封装成输入输出事件的步骤之后还包括:创建一个与所述输入输出事件相关联的定时事件,并将所述定时事件与第二回调函数进行绑定。
6.根据权利要求5所述的基于Socket的客户端跨平台网络通信方法,其特征在于,在所述通过所述套接字接口发送至所述服务端的步骤之后还包括:判断是否接收到所述消息对应的应答消息;
若为是,将所述消息从所述消息队列中删除;
若为否,检查所述套接字的链路连接状态。
7.根据权利要求6所述的基于Socket的客户端跨平台网络通信方法,其特征在于,在所述检查所述套接字的链路连接状态的步骤之后还包括:检查到连接状态为断开状态,重新进行所述链路的连接;
检查到连接状态为连接状态,重新执行所述将所述消息封装成输入输出事件的步骤。
8.一种基于Socket的客户端跨平台网络通信装置,其特征在于,包括:创建模块,用于创建套接字,将套接字接口与服务端的地址信息进行绑定,并在内存中创建缓存区;
添加模块,用于初始化消息队列,将通信数据封装成消息,并将所述消息添加至所述消息队列中;
封装模块,用于从所述消息队列中将所述消息依次取出,将所述消息封装成输入输出事件;
监听模块,用于将所述输入输出事件进行注册,并对所述输入输出事件的状态进行监听;及
缓存发送模块,用于在监听到触发所述输入输出事件时,将所述输入输出事件缓存至所述缓存区,并通过所述套接字接口发送至所述服务端。
9.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述处理器执行所述计算机可读指令时实现如权利要求1至7中任一项所述的基于Socket的客户端跨平台网络通信方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机可读指令,所述计算机可读指令被处理器执行时实现如权利要求1至7中任一项所述的基于Socket的客户端跨平台网络通信方法的步骤。