กระบวนการย่อยของ Python เปิด“ OSError: [Errno 12] ไม่สามารถจัดสรรหน่วยความจำได้”
หมายเหตุ:คำถามนี้เดิมถูกถามที่นี่แต่เวลาของรางวัลหมดลงแม้ว่าจะไม่พบคำตอบที่ยอมรับได้ก็ตาม ฉันกำลังถามคำถามนี้อีกครั้งรวมถึงรายละเอียดทั้งหมดที่ให้ไว้ในคำถามเดิม สคริปต์ python กำลังรันชุดฟังก์ชันคลาสทุกๆ 60 วินาทีโดยใช้โมดูลsched : # sc is a sched.scheduler instance sc.enter(60, 1, self.doChecks, (sc, False)) สคริปต์ที่ทำงานเป็นกระบวนการ daemonised โดยใช้รหัสที่นี่ เมธอดคลาสจำนวนหนึ่งที่เรียกว่าเป็นส่วนหนึ่งของ doChecks ใช้โมดูลกระบวนการย่อยเพื่อเรียกใช้ฟังก์ชันระบบเพื่อรับสถิติของระบบ: ps = subprocess.Popen(['ps', 'aux'], stdout=subprocess.PIPE).communicate()[0] สิ่งนี้ทำงานได้ดีในช่วงเวลาหนึ่งก่อนที่สคริปต์ทั้งหมดจะหยุดทำงานโดยมีข้อผิดพลาดต่อไปนี้: File "/home/admin/sd-agent/checks.py", line 436, in getProcesses File "/usr/lib/python2.4/subprocess.py", line 533, in __init__ File "/usr/lib/python2.4/subprocess.py", line 835, in _get_handles OSError: …