Makinemde, ulimit -n
numaralı Linux makinesinde 1024
verilir. basitçe int
ve str
yüzden ancak f
ve path
ait type
vardır - Ben birçok dosyalara açtıktan gibiDosyaları tempfile.mkstemp'den nasıl kapatabilirim?
Traceback (most recent call last):
File "utest.py", line 4, in <module>
File "/usr/lib/python2.7/tempfile.py", line 300, in mkstemp
File "/usr/lib/python2.7/tempfile.py", line 235, in _mkstemp_inner
OSError: [Errno 24] Too many open files: '/tmp/tmpc5W3CF'
Error in sys.excepthook:
Traceback (most recent call last):
File "/usr/lib/python2.7/dist-packages/apport_python_hook.py", line 64, in apport_excepthook
ImportError: No module named fileutils
Öyle görünüyor: Bu kod:
from tempfile import mkstemp
for n in xrange(1024 + 1):
f, path = mkstemp()
ile son satır döngü başarısız Açtığım her dosyayı nasıl kapatacağımı bilmiyorum. Dosyaları tempfile.mkstemp'den nasıl kapatabilirim?
Sadece bir açıklama. mkstemp() bir unix dosya tanımlayıcısını döndürür, böylece onunla çalışmanız gerekir ya fdopen'i kullanarak açın veya os kapatma işlevini kullanın: os.close() – turtlebender
Teşekkürler, @turtlebender. – unutbu