shared-memory相关内容

如何调整/dev/shm的大小?

在 Ubuntu 18.04 上,当我运行 $ df -h , 我看到了这个结果: 使用的文件系统大小可用使用百分比已安装在...tmpfs 3,9G 73M 3,8G 2%/dev/shm... /dev/shm 的大小为3.9G. 如何更改/dev/shm 的大小? 解决方案 编辑文件/etc/fstab (如果需要,使用 sudo ). 在此文件中,尝试找到 ..
发布时间:2021-05-29 22:47:57 服务器开发

我可以使用shmctl调整Linux共享内存的大小吗?

我有一个C ++应用程序,它通过shmget(2)在Linux系统上分配共享内存.我存储在共享内存中的数据会定期增长,并且我想以一种类似于realloc()增长常规内存的方式来调整共享内存的大小.有没有办法做到这一点?我在IBM网站上找到了一个提到SHM_SIZE命令的文档,但是Linux和BSD的联机帮助页中没有该文档,即使在特定于Linux的部分中也是如此. 解决方案 简单的答案:没有 ..
发布时间:2021-05-29 22:44:52 服务器开发

Linux将虚拟内存范围映射到现有虚拟内存范围?

在Linux中,是否有一种方法(在用户空间中)将虚拟地址范围映射到支持现有虚拟地址范围的物理页?mmap()函数仅允许一个映射文件或“新"物理页面.我需要能够执行以下操作: int * addr1 = malloc(SIZE);int * addr2 = 0x60000;//假设这里没有分配任何东西fancy_map_function(addr1,addr2,SIZE);assert(* ad ..
发布时间:2021-05-29 22:43:43 服务器开发

如何使用shm_open共享现有内存?

在Linux中,我想与其他进程共享我的进程的一些内存内容.一种方法是使用shm_open和mmap.如下所示. /*创建一个新的内存对象*/fd = shm_open("/bolts",O_RDWR | O_CREAT,0777);if(fd == -1){fprintf(stderr,“打开失败:%s \ n",strerror(errno));返回EXIT_FAILURE;}/*设置内存对象 ..
发布时间:2021-05-29 22:41:21 服务器开发

android mmap失败:参数无效(错误号22)

我正在为我的android设备移植/编译 androidvncserver ,但是当我以根用户身份运行它,但不断收到mmap错误. 令人反感的代码如下: /* Android不使用/dev/fb0.*/#定义FB_DEVICE"/dev/graphics/fb0"如果((fbfd = open(FB_DEVICE,O_RDONLY))== -1){printf(“无法打开fb设备%s \ ..
发布时间:2021-05-29 22:28:58 移动开发

"volatile"是否保证任何线程都读取最近写入的值?

摘自有效Java一书: 虽然volatile修饰符不执行互斥,但它保证读取该字段的任何线程都将看到最新写入的值 SO 和许多其他来源都声称类似. 这是真的吗? 我的意思是真实的,不是一个足够接近的模型,或者仅在x86上,或者仅在Oracle JVM中,或者“最近编写的"一些定义.那不是标准的英语解释... 其他消息来源( SO示例)说Java中的volatile就像C ..
发布时间:2021-05-18 20:29:21 Java开发

用于进程间共享内存的非Boost STL分配器?

由于我使用的政策,我无法使用1.31.3之前的Boost版本,也无法使用4.1.2之前的GCC版本.是的,这是垃圾,但是对此我无能为力.Boost 1.33.1不包含进程间库. 也就是说,我的一个项目需要将 std :: map (或更可能是 std :: unordered_map )放置到共享内存中.当进程由单个进程(“服务器")加载并由众多其他进程读取时,只能写入/修改一次.我之前没有 ..
发布时间:2021-05-17 18:57:10 C/C++开发

在Docker中更改共享内存的大小

我当前在一个容器中的共享内存出现了一些问题. 我有一个docker-compose文件,希望可以在其中设置大小.我基本上转换了一个旧的docker run,该运行具有-shm-size 16gb .我想这就像将 shm_size:16gb 添加到撰写文件中的服务一样简单. 添加它只会给我以下信息:忽略不支持的选项:shm_size . 我确实检查了 你们中的一个人是否曾经遇 ..
发布时间:2021-05-02 19:17:47 其他开发

如何在两个不同的http请求之间共享字典

Django应用程序将数据从文件加载到Python字典,进行处理并将其作为http响应发送.现在说,在Web服务器上接收到n个请求,那么这个Django应用程序将运行 n 次,并将数据从文件加载到Python dict n 次.我想知道是否可以在可以提供 n http响应的同时,仅一次将数据加载到dict. 针对问题情况的示例 view.py 文件可以如下所示: 来自django.http ..
发布时间:2021-05-01 19:19:55 Python

您如何在python中将完整结构写入共享内存?

有许多示例显示了如何将单个变量甚至结构的单个成员写入共享内存,但是有一种方法可以将整个结构放入共享内存中,以便您可以简单地操作该结构以更新共享内存? 这是到目前为止我正在做的一个示例(在我的实际程序中-结构中有50多个字段-完成时可能超过100个字段).它每0.05秒用x,y,z坐标更新共享内存.尽管它可以正常工作,但它在每个步骤都打包了一个新的结构,并将整个内容写入共享内存-对我来说这似乎 ..
发布时间:2021-04-27 20:00:58 Python

在python中的进程之间共享连续的numpy数组

虽然我找到了许多类似于我的问题的答案,但我不认为这里已经直接解决了这个问题,而且我还有其他一些问题.共享连续的numpy数组的动机如下: 我正在使用在Caffe上运行的卷积神经网络对图像进行回归到一系列连续值标签. 图像需要特定的预处理和数据增强. (1)标签的连续性质(它们是浮动的)和(2)数据扩充的约束意味着我正在python中预处理数据,然后使用inCaffe中的内存数据层. 将 ..
发布时间:2021-04-21 18:47:16 Python

通过共享内存将数据从C ++传输到C#

我正在尝试使用共享内存将数据从C ++应用程序流式传输到C#应用程序.根据我发现的示例,我有: c ++(发送) 结构对{整数长度浮动数据[3];};#include#include结构对* p;手柄float dataSend [3] {22,33,44};bool startShare(){尝试{句柄= CreateFileMappingW( ..
发布时间:2021-04-19 20:55:58 C#/.NET

共享内存中的映射

我正在尝试在共享内存中创建unordered_map.我正在使用分配器来达到目的. 代码 void * addr;*池;int shmid;模板类MyPoolAlloc {私人的:上市:typedef size_t size_type;typedef ptrdiff_t Difference_type;typedef T *指针;typedef const T * const_ ..
发布时间:2021-04-19 19:38:41 C/C++开发

通过fork()使用共享内存

我已经看过唯一可以找到的类似文章,但这不是我想要的. 基本上,我正在尝试对奇偶校验进行分叉,因此,孩子的赔率很高,而父母的赔率很高.这两个都需要共享向量inputValues以及布尔排序. 以下代码没有我在共享内存上的任何失败尝试,而只是将派生与搜索算法结合使用的基本框架: while(!sorted){pID = fork();排序= true;cout ..
发布时间:2021-04-19 19:38:38 C/C++开发

在python多处理中传递共享内存变量

我想使用Python的多处理程序并行读取一堆文件,并将所有数据收集在一个NumPy数组中.为此,我想定义一个共享内存NumPy数组,并将其切片传递给不同的进程以并行读取.以下代码给出了我想做的事的玩具插图,其中我尝试使用多处理来修改numpy数组. 示例1: 将numpy导入为np导入多处理def do_stuff(i,arr):arr [:] = i返回def print_error(e ..
发布时间:2021-04-16 20:20:33 Python

如何使用运行时大小参数构造boost spsc_queue,以使用共享内存在两个进程之间交换cv :: Mat对象?

尝试实施一个生产者使用的方案,其中一个进程可以提供 cv :: Mat对象放入队列缓冲区.消费者消费它们. cv :: Mat 具有无法在共享内存中构造带有运行时大小参数的运行时增强spsc_queue 共享内存IPC同步(无锁) 提升共享内存使用者流程中的同步队列问题/崩溃 解决方案 “可设置" cv :: Mat 的分配器不是Boost进程间分配器. 看起来它会变得“困难". ..
发布时间:2021-04-15 20:54:39 C/C++开发