这是我尝试做的一个例子:
import ctypes
MEM_SIZE = 1024*1024*128
# allocate memory (this is Windows specific)
ptr = ctypes.cdll.msvcrt.malloc(MEM_SIZE)
# make memory accessible to Python calls
mem = ctypes.string_at(ptr, MEM_SIZE)
# BAD: string_at duplicates memory
# store it to disk
open(r'test.raw', 'wb').write(mem)
简而言之:我有一个普通的内存指针,我知道块的大小并希望将其存储在磁盘上或将其作为 numpy 数组重用。
如何在不生成内存块副本的情况下做到这一点?
相关问题:stackoverflow:填充 python ctypes 指针(感谢 Brian Larsen 的提示)