2011-06-18 100 views
8

的取消映射我無法找到如何numpy的手柄以前去映射內存映射區任何文件:munmapnumpy.memmap()numpy.load(mmap_mode)NumPy的MEMMAP

我的猜測是隻在垃圾收集時完成的,這是否正確?

+0

如果NumPy支持'munmap'的一些手動控制概念,它將是一個很好的工具。例如,我可以打開一些「mmap」模式加載一些數組''x。在某個時候我讀'x [0:100]',然後我讀'x [101:200]'。我希望能夠調用'numpy.munmap(x [0:100])',並且結果是隻有'x [101:200]'的元素被加載到內存中,並且任何對' x [0:100]'必須在評估時重新「映射」它們。 – ely

回答

7

是的,只有當物體被垃圾收集時才關閉; memmap.close方法什麼都不做。

您可以撥打x._mmap.close(),但請記住,任何進一步訪問x對象都會導致python崩潰。