一种数字货币交易方法和装置制造方法及图纸

技术编号:32261539 阅读:30 留言:0更新日期:2022-02-12 19:22
本发明专利技术公开了一种数字货币交易方法和装置,涉及计算机技术领域。该方法的一具体实施方式包括:分别与第一钱包和第二钱包进行命令交互,在命令交互的过程中,当向第一钱包发送完第一命令后,并行执行以下两种操作:从第一钱包分块接收第一命令的响应数据的操作,以及,向第二钱包分块发送第二命令的操作;其中,发送的第二命令的数据块是基于收到的第一命令的响应数据的数据块生成的;在完成与第一钱包和第二钱包的所有命令发送和相应的响应数据接收的操作之后,结束数字货币交易流程。该实施方式能够实现接收数据和发送数据的并行处理,减少数据收发处理的时间消耗,提高数字货币交易效率。货币交易效率。货币交易效率。

【技术实现步骤摘要】
一种数字货币交易方法和装置


[0001]本专利技术涉及计算机
,尤其涉及一种数字货币交易方法和装置。

技术介绍

[0002]数字货币的交易通常有三个参与实体,终端APP(应用程序),收款方钱包、付款方钱包。终端APP作为收、付款双方钱包的数据通讯枢纽,通过交换收、付款双方钱包的数据,实现交易双方认证和完成交易收付款操作。由于一方钱包的处理依赖于对方钱包上一次的处理数据结果,所以流程上终端APP处理是一个串行执行过程,即收到一方钱包完整数据包后,再发送给另一方钱包。限于钱包的物理接口或通讯协议特性,通讯缓冲区大小是有限制的,而钱包发送的数据包大小超过通讯缓冲区大小时,需要将数据包分成若干个数据块多次发送。终端APP必须等到完整数据包接收完成后,才能将完整数据包再拆分成若干数据块发给另一方钱包处理。
[0003]在实现本专利技术过程中,专利技术人发现现有技术中至少存在如下问题:
[0004]接收数据和发送数据为串行处理,数据收发处理的时间消耗较长,数字货币交易效率低。

技术实现思路

[0005]有鉴于此,本专利本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种数字货币交易方法,其特征在于,包括:分别与第一钱包和第二钱包进行命令交互,在所述命令交互的过程中,当向所述第一钱包发送完第一命令后,并行执行以下两种操作:从所述第一钱包分块接收所述第一命令的响应数据的操作,以及,向所述第二钱包分块发送第二命令的操作;其中,发送的所述第二命令的数据块是基于收到的所述第一命令的响应数据的数据块生成的;在完成与所述第一钱包和所述第二钱包的所有命令发送和相应的响应数据接收的操作之后,结束数字货币交易流程。2.根据权利要求1所述的方法,其特征在于,所述第一钱包为付款钱包,所述第一命令为付款命令,且所述第二钱包为收款钱包,所述第二命令为收款命令;或者,所述第一钱包为收款钱包,所述第一命令为收款命令,且所述第二钱包为付款钱包,所述第二命令为付款命令。3.根据权利要求1所述的方法,其特征在于,通过第一线程向所述第一钱包发送所述第一命令以及从所述第一钱包分块接收所述第一命令的响应数据,通过第二线程向所述第二钱包分块发送所述第二命令。4.根据权利要求3所述的方法,其特征在于,所述第一线程和所述第二线程在所发出命令的数量为多条的情况下,分别通过各自维护的状态机确定所发出命令的顺序。5.根据权利要求3所述的方法,其特征在于,所述第一线程或所述第二线程在每次发送完一条命令之后,将所维护的状态机切换到待发送下一条命令的状态。6.根据权利要求3所述的方法,其特征在于,所述并行执行以下两种操作:从所述第一钱包分块接收所述第一命令的响应数据的操作,以及,向所述第二钱包分块发送第二命令的操作,包括:所述第一线程从所述第一钱包接收所述第一命令的响应数据的第一个数据块;所述第一线程在收到所述第一命令的响应数据的预设数量的数据块之后,通过消息触发所述第二线程,以使在所述第一线程接收所述第一命令的响应数据的剩余数据块的同时,所述第二线程根据所述第一线程已接收到的所述第一命令的响应数据的数据块,生成所述第二命令的数据块,并将生成的所述第二命令的数据块发送到所述第二钱包。7.根据权利要求6所述的方法,其特征在于,所述第一线程在收到所述第一命令的响应数据的预设数量的数据块之后,设置所述第二线程对应的并行处理消息为有效,以触发所述第二线程。8.根据权利要求7所述的方法,其特征在于,所述设置所述第二线程对应的并行处理消息为有效,包括:根据已接收的所述第一命令的响应数据的数据块,在所述第二线程对应的并行处理消息中写入数据有效长度;所述方法还包括:在所述第一线程接收所述第一命令的响应数据的剩余数据块的过程中,动态更新所述第二线程对应的并行处理消息中的所述数据有效长度。9.根据权利要求8所述的方法,其特征在于,从所述第一钱包接收的所述第一命令的响应数据的数据块存储在共享数据缓存区中;所述第二线程根据所述第一线程已接收到的所述第一命令的响应数据的数据块,生成所述第二命令的数据块,包括:所述第二线程在检查到所述第二线程对应的并行处理消息有效的情况下,根据所述数
据有效长度,从所述共享数据缓存区中获取所述第一命令的响应数据的数据块,并根据获取的数据块生成所述第二命令的数据块。10.根据权利要求8所述的方法,其特征在于,在所述第一线程收到所述第一命令的响应数据的所有数据块之后,将所述第二线程对应的并行处理消息中的数据接收完成标识的值置为特定值。11.根据权利要求10所述的方法,其特征在于,所述第二线程在将生成的所述第二命令的数据块发送到所述第二钱包之后,统计已发送到所述第二钱包的数据长度,在所述第二线程已发送到所述第二钱包的数据长度等于所述数据有效长度,且所述第二线程对应的并行处理消息中的数据接收完成标识的值为所述特定值的情况下,将所述第二线程对应的并行处理消息恢复为初始化状态。12.一种数字货币交易装置,其特征在于,包括:命令交互模块,用于分别与第一钱包和第二钱包进行命令交互,在所述命令交互的过程中,当向所述第一钱包发送完第一命令后,并行执行以下两种操作:从所述第一钱包分块...

【专利技术属性】
技术研发人员:穆长春狄刚赵新宇袁巧崔沛东边永超
申请(专利权)人:中国人民银行数字货币研究所
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1