NumPy e memmap: [Errno 24] Muitos arquivos abertos

Eu estou trabalhando com grandes matrizes, então estou usando o memmap do NumPy. No entanto, estou recebendo um erro, pois aparentemente os descritores de arquivo usados ​​pelo memmap não estão sendo fechados.

import numpy
import tempfile

counter = 0
while True:
    temp_fd, temporary_filename = tempfile.mkstemp(suffix='.memmap')
    map = numpy.memmap(temporary_filename, dtype=float, mode="w+", shape=1000)
    counter += 1
    print counter
    map.close()
    os.remove(temporary_filename)

Pelo que entendi, o arquivo memmap é fechado quando o método close () é chamado. No entanto, o código acima não pode fazer um loop para sempre, uma vez que, eventualmente, lança o "[Errno 24] Muitos arquivos abertos"erro:

    1016
    1017
    1018
    1019
    Traceback (most recent call last):
      File "./memmap_loop.py", line 11, in <module>
      File "/usr/lib/python2.5/site-packages/numpy/core/memmap.py", line 226, in __new__
    EnvironmentError: [Errno 24] Too many open files
    Error in sys.excepthook:
    Traceback (most recent call last):
      File "/usr/lib/python2.5/site-packages/apport_python_hook.py", line 38, in apport_excepthook
    ImportError: No module named packaging_impl

    Original exception was:
    Traceback (most recent call last):
      File "./memmap_loop.py", line 11, in <module>
      File "/usr/lib/python2.5/site-packages/numpy/core/memmap.py", line 226, in __new__
    EnvironmentError: [Errno 24] Too many open files

Alguém sabe o que eu estou negligenciando?

questionAnswers(1)

yourAnswerToTheQuestion