栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

如何在python和C / C ++中使用共享内存

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

如何在python和C / C ++中使用共享内存

也许

shmget
而且
shmat
不一定是最适合您使用的界面。在我从事的项目中,我们使用内存映射 文件 通过C和Python
API提供对守护程序的访问,这为我们提供了一种非常快速的访问数据的方法

操作顺序如下所示:

  • 客户端
    door_call()
    通知后台程序创建共享内存区域
  • 守护程序安全地创建一个临时文件
  • 守护程序
    open()
    ,然后
    mmap()
    是该文件
  • 守护程序通过以下方式将文件描述符传递回客户端
    door_return()
  • 客户端
    mmap()
    是文件描述符,并将结构中连续放置的变量与该fd相关联
  • 客户对这些变量进行所需的任何操作-需要时。
  • 守护程序从共享区域读取并进行自己的更新(在我们的示例中,该守护进程将值从该共享区域写入日志文件)。

我们的客户利用图书馆来处理上述前5个步骤;该库随附了使用ctypes的Python包装器,以准确显示所需的函数和数据类型。

对于您的问题空间,如果只是python应用程序写入您的输出队列,那么您可以跟踪仅在python应用程序中处理过的帧。如果您的python和c
++应用程序都正在写入输出队列,那么这将增加您的难度,也许重构整个应用程序体系结构将是一项不错的投资。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/646844.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号