【问题标题】:Python getting shared memory: size is not consistentPython获取共享内存:大小不一致
【发布时间】:2021-06-17 15:55:07
【问题描述】:

流程一:

shm=multiprocessing.shared_memory.SharedMemory(name="shm", create=True, size=10000)
print(shm.size)

打印 10000 个

流程 2:

shm=multiprocessing.shared_memory.SharedMemory(name="shm")
print(shm.size)

打印 12288

问题是我正在尝试使用缓冲区来支持一个 numpy 数组。然后 numpy 抱怨它不能 reshape() 数组,因为它的大小不同。

【问题讨论】:

    标签: python numpy shared-memory


    【解决方案1】:

    共享内存四舍五入到下一页大小,在您的情况下为 3 * 4096。您必须将缓冲区切片为正确的大小

    shm = multiprocessing.shared_memory.SharedMemory(name="shm")
    buffer = shm.buf[:10000]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-09
      • 2022-12-05
      • 2021-08-24
      • 1970-01-01
      相关资源
      最近更新 更多