1.一种游戏手柄快速收发数据的方法,其特征在于,所述游戏手柄设置有第一收发模块和第二收发模块,所述方法包括:
为所述游戏手柄构建应用主线程和收发副线程;
当所述应用主线程需要发送数据时,使所述收发副线程通过所述第一收发模块和所述第二收发模块的相互配合进行发送所述数据;
当所述第一收发模块和所述第二收发模块接收数据时,使所述收发副线程对所述第一收发模块和所述第二收发模块接收到的数据进行校验,并且在所述数据校验通过时,将所述数据发送至应用主线程。
2.根据权利要求1所述的方法,其特征在于,
所述第一收发模块的处理优先级低于所述第二收发模块的处理优先;
所述当所述主线程需要发送数据时,使所述收发副线程通过所述第一收发模块和所述第二收发模块的相互配合进行发送所述数据包括:
当所述应用主线程需要发送数据时,使所述应用主线程发送执行消息给预设消息列表,并将所述数据拷贝到一级缓存;
使所述收发副线程根据先进先出算法,从所述预设消息列表提取消息并将所述一级缓存中的与提取到的消息相对应的所述数据拷贝到二级缓存中,消除所述执行消息;
使所述收发副线程根据第一收发模块和第二收发模块的处理优先级原则和空闲原则依次将二级缓存中的所述数据拷贝到第一收发模块或者第二收发模块中进行发送数据。
3.根据权利要求2所述的方法,其特征在于,所述使所述副线程根据第一收发模块和第二收发模块的处理优先级原则和空闲原则依次将二级缓存中的所述数据拷贝到第一收发模块或者第二收发模块中进行发送数据包括:
从所述二级缓存中提取一数据,在所述一数据的头部加入数据编号标识,并且将所述一数据作为待收数据;
判断所述第一收发模块和第二收发模块是否存在空闲;
当所述第一收发模块和第二收发模块只存在一个空闲的收发模块,将所述待收数据发送至空闲的收发模块,由空闲的收发模块进行收发处理,或者,当所述第一收发模块和第二收发模块均空闲时,将所述待收数据发送至第二收发模块,由所述第二收发模块进行收发处理;
当所述第一收发模块或者第二收发模块完成对所述一数据的接收处理之后,从所述二级缓存中提取下一数据,并且所述下一个数据的数据编号标识按照所述数据的数据编号标识进行递增,将所述一下数据作为待收数据,并且返回判断所述第一收发模块和第二收发模块是否存在空闲的步骤。
4.根据权利要求2所述的方法,其特征在于,当所述主线程需要发送数据时,使所述收发副线程通过所述第一收发模块和所述第二收发模块的相互配合进行发送所述数据还包括:
从所述二级缓存中提取第一数据,在所述第一数据头部加入数据编号标识;
将所述第一数据分配到第二收发模块进行处理;
从所述二级缓存中提取第二数据,在所述第二数据头部加入数据编号标识,其中,在所述第二数据头部加入的数据编号标识按照第一数据的数据编号标识进行递增;
判断所述第二数据和所述第一数据是否是相同数据;
如果相同,则分配到第二收发模块进行处理;
如不同,则分配到第一收发模块进行处理;
从所述二级缓存中提取第三数据,在所述第三数据头部加入的数据编号标识按照第二数据的数据编号标识进行递增;
判断所述第三数据与所述第一数据和所述第二数据是否是相同数据;
如与所述第一数据和所述第二数据中的其中一个是相同数据,将所述第三数据分配到与之相同的数据进行收发的收发模块一同收发;
如与两者都不同,则等待第一收发模块和第二发收模块处于空闲再进行处理。
5.根据权利要求1所述的方法,其特征在于,所述当所述第一收发模块和所述第二收发模块接收数据时,所述收发副线程对所述第一收发模块和所述第二收发模块接收到的数据进行校验包括:
在收发数据之前在数据的尾部均添加循环冗余校验码。
6.一种游戏手柄快速收发数据的装置,其特征在于,所述游戏手柄设置有第一收发模块和第二收发模块,包括:
构建模块,用于为所述游戏手柄构建应用主线程和收发副线程;
发送模块,用于当所述主线程需要发送数据时,使所述收发副线程通过所述第一收发模块和所述第二收发模块的相互配合进行发送所述数据;
校验模块,用于当所述第一收发模块和所述第二收发模块接收数据时,使所述收发副线程对所述第一收发模块和所述第二收发模块接收到的数据进行校验,并且在所述数据校验通过时,将所述数据发送至应用主线程。
7.根据权利要求6所述的装置,其特征在于,所述第一收发模块的处理优先级低于所述第二收发模块的处理优先,所述发送模块包括:
发送单元,用于当所述应用主线程需要发送数据时,使所述应用主线程发送执行消息给预设消息列表,并将所述数据拷贝到一级缓存;
第一提取单元,用于使所述收发副线程根据先进先出算法,从所述预设消息列表提取消息并将所述一级缓存中的与提取到的消息相对应的所述数据拷贝到二级缓存中,消除所述执行消息;
拷贝单元,用于使所述收发副线程根据第一收发模块和第二收发模块的处理优先级原则和空闲原则依次将二级缓存中的所述数据拷贝到第一收发模块或者第二收发模块中进行发送数据。
8.根据权利要求7所述的装置,其特征在于,所述拷贝单元包括:
第一提取子单元,用于从所述二级缓存中提取一数据,在所述一数据的头部加入数据编号标识,并且将所述一数据作为待收数据;
判断子单元,用于判断所述第一收发模块和第二收发模块是否存在空闲;
发送子单元,用于当所述第一收发模块和第二收发模块只存在一个空闲的收发模块,将所述待收数据发送至空闲的收发模块,由空闲的收发模块进行收发处理,或者,当所述第一收发模块和第二收发模块均空闲时,将所述待收数据发送至第二收发模块,由所述第二收发模块进行收发处理;
第二提取子单元,用于当所述第一收发模块或者第二收发模块完成对所述一数据的接收处理之后,从所述二级缓存中提取下一数据,并且所述下一个数据的数据编号标识按照所述数据的数据编号标识进行递增,将所述一下数据作为待收数据,并且返回判断所述第一收发模块和第二收发模块是否存在空闲的步骤。
9.根据权利要求7所述的装置,其特征在于,所述发送模块包括:
第二提取单元,用于从所述二级缓存中提取第一数据,在所述第一数据头部加入数据编号标识;
第一分配单元,用于将所述第一数据分配到第二收发模块进行处理;
第三提取单元,用于从所述二级缓存中提取第二数据,在所述第二数据头部加入数据编号标识,其中,在所述第二数据头部加入的数据编号标识按照第一数据的数据编号标识进行递增;
第一判断单元,用于判断所述第二数据和所述第一数据是否是相同数据;
第二分配单元,用于如果所述第二数据和所述第一数据相同,则分配到第二收发模块进行处理;
第三分配单元,用于如所述第二数据和所述第一数据不同,则分配到第一收发模块进行处理;
第四提取单元,用于从所述二级缓存中提取第三数据,在所述第三数据头部加入的数据编号标识按照第二数据的数据编号标识进行递增;
第二判断单元,用于判断所述第三数据与所述第一数据和所述第二数据是否是相同数据;
第四分配单元,用于如与所述第一数据和所述第二数据中的其中一个是相同数据,将所述第三数据分配到与之相同的数据进行收发的收发模块一同收发;
第五分配单元,用于如与两者都不同,则等待第一收发模块和第二发收模块处于空闲再进行处理。
10.根据权利要求6所述的装置,其特征在于,所述校验模块还包括:
添加单元,用于在收发数据之前在数据的尾部均添加循环冗余校验码。