System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 进程间数据传输方法、装置、电子设备及存储介质制造方法及图纸_技高网

进程间数据传输方法、装置、电子设备及存储介质制造方法及图纸

技术编号:40794804 阅读:6 留言:0更新日期:2024-03-28 19:23
本公开实施例提供一种进程间数据传输方法、装置、电子设备及存储介质,通过为第一程序进程与第二程序进程创建本地进程间通信连接后,通过第一程序进程获得数据流标识;通过第一程序进程向共享内存的数据缓存区写入目标数据,并在目标数据写入完毕后,基于数据流标识,向共享内存的第一位图字段的目标位置写入第一读写状态值,目标位置基于数据流标识确定;通过第二程序进程对共享内存的第一位图字段进行忙等待轮询检测,若在第一位图字段的目标位置检测到第一读写状态值,则从数据缓存区中,获取第一程序进程输出的目标数据。该过程无需进行系统调用,因此节省了系统调用的资源开销,提高数据传输的效率,降低等待延迟。

【技术实现步骤摘要】

本公开实施例涉及计算机,尤其涉及一种进程间数据传输方法、装置、电子设备及存储介质


技术介绍

1、当前,针对不同的本地进程,可以通过本地进程间通信和共享内存技术,来实现进程间的数据高效传输。

2、然而,现有技术中的进程间数据传输方案,存在数据传输效率低、延迟高的问题。


技术实现思路

1、本公开实施例提供一种进程间数据传输方法、装置、电子设备及存储介质,以克服进程间通信时存在的数据传输效率低、延迟高的问题。

2、第一方面,本公开实施例提供一种进程间数据传输方法,包括:

3、为第一程序进程与第二程序进程创建本地进程间通信连接后,通过所述第一程序进程获得数据流标识;

4、通过所述第一程序进程向共享内存的数据缓存区写入目标数据,并在所述目标数据写入完毕后,基于所述数据流标识,向所述共享内存的第一位图字段的目标位置写入第一读写状态值,所述目标位置基于所述数据流标识确定;

5、通过所述第二程序进程对所述共享内存的第一位图字段进行忙等待轮询检测,若在所述第一位图字段的目标位置检测到所述第一读写状态值,则从所述数据缓存区中,获取所述第一程序进程输出的目标数据。

6、第二方面,本公开实施例提供一种进程间数据传输装置,包括:

7、获取模块,用于为第一程序进程与第二程序进程创建本地进程间通信连接后,通过所述第一程序进程获得数据流标识;

8、写入模块,用于通过所述第一程序进程向共享内存的数据缓存区写入目标数据,并在所述目标数据写入完毕后,基于所述数据流标识,向所述共享内存的第一位图字段的目标位置写入第一读写状态值,所述目标位置基于所述数据流标识确定;

9、读取模块,用于通过所述第二程序进程对所述共享内存的第一位图字段进行忙等待轮询检测,若在所述第一位图字段的目标位置检测到所述第一读写状态值,则从所述数据缓存区中,获取所述第一程序进程输出的目标数据

10、第三方面,本公开实施例提供一种电子设备,包括:处理器和存储器;

11、所述存储器存储计算机执行指令;

12、所述处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如上第一方面以及第一方面各种可能的设计所述的进程间数据传输方法。

13、第四方面,本公开实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的进程间数据传输方法。

14、第五方面,本公开实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上第一方面以及第一方面各种可能的设计所述的进程间数据传输方法。

15、本实施例提供的进程间数据传输方法、装置、电子设备及存储介质,通过为第一程序进程与第二程序进程创建本地进程间通信连接后,通过所述第一程序进程获得数据流标识;通过所述第一程序进程向共享内存的数据缓存区写入目标数据,并在所述目标数据写入完毕后,基于所述数据流标识,向所述共享内存的第一位图字段的目标位置写入第一读写状态值,所述目标位置基于所述数据流标识确定;通过所述第二程序进程对所述共享内存的第一位图字段进行忙等待轮询检测,若在所述第一位图字段的目标位置检测到所述第一读写状态值,则从所述数据缓存区中,获取所述第一程序进程输出的目标数据。通过在由第一程序进程将待发送的目标数据写入共享内存后,向共享内存中的第一位图字段的指定位置写入第一读写状态值,来触发第二程序进程的数据获取操作,从而实现数据的发送,该过程无需进行系统调用,因此节省了系统调用的资源开销,提高数据传输的效率,降低等待延迟。

本文档来自技高网...

【技术保护点】

1.一种进程间数据传输方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述通过所述第一程序进程获得数据流标识,包括:

3.根据权利要求2所述的方法,其特征在于,所述握手请求消息中包括第一请求字段和/或第二请求字段,所述第一请求字段用于确定所述第一程序进程所适配的第二程序进程的程序版本信息;所述第二请求字段用于表征所述数据流传输任务所需的内存空间。

4.根据权利要求2所述的方法,其特征在于,所述握手响应消息中还包括以下至少一种:

5.根据权利要求1所述的方法,其特征在于,所述通过所述第一程序进程向共享内存的数据缓存区写入目标数据,包括:

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述方法还包括:

8.根据权利要求7所述的方法,其特征在于,所述关闭所述第二程序进程一侧的本地进程间通信连接,包括:

9.根据权利要求7所述的方法,其特征在于,在所述关闭所述第一程序进程一侧的本地进程间通信连接之前,还包括:

<p>10.根据权利要求1所述的方法,其特征在于,所述方法还包括:

11.根据权利要求10所述的方法,其特征在于,所述触发所述第一程序进程的本地进程间通信连接的关闭,包括:

12.一种进程间数据传输装置,其特征在于,包括:

13.一种电子设备,其特征在于,包括:处理器和存储器;

14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至11任一项所述的进程间数据传输方法。

15.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至11任一项所述的进程间数据传输方法。

...

【技术特征摘要】

1.一种进程间数据传输方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述通过所述第一程序进程获得数据流标识,包括:

3.根据权利要求2所述的方法,其特征在于,所述握手请求消息中包括第一请求字段和/或第二请求字段,所述第一请求字段用于确定所述第一程序进程所适配的第二程序进程的程序版本信息;所述第二请求字段用于表征所述数据流传输任务所需的内存空间。

4.根据权利要求2所述的方法,其特征在于,所述握手响应消息中还包括以下至少一种:

5.根据权利要求1所述的方法,其特征在于,所述通过所述第一程序进程向共享内存的数据缓存区写入目标数据,包括:

6.根据权利要求5所述的方法,其特征在于,所述方法还包括:

7.根据权利要求1所述的方法,其特征在于,所述方法还包括:

8.根据权利要求7所述的方法,其特征在于,所述关闭所述第二...

【专利技术属性】
技术研发人员:黄子敬杨帆
申请(专利权)人:北京火山引擎科技有限公司
类型:发明
国别省市:

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

1