Ich schreibe manchmal Python-Programme, bei denen es sehr schwierig ist, zu bestimmen, wie viel Speicher sie vor der Ausführung verwenden werden. Daher rufe ich manchmal ein Python-Programm auf, das versucht, riesige Mengen an RAM zuzuordnen, was dazu führt, dass der Kernel die Leistung anderer laufender Prozesse stark vertauscht und verschlechtert.Wie die Größe des Heap zu begrenzen?
Aus diesem Grund möchte ich beschränken, wie viel Speicher ein Python-Heap wachsen kann. Wenn das Limit erreicht ist, kann das Programm einfach abstürzen. Was ist der beste Weg, dies zu tun?
Wenn es darauf ankommt, wird viel Code in Cython geschrieben, daher sollte dort der dort zugewiesene Speicher berücksichtigt werden. Ich bin nicht mit einer reinen Python-Lösung verheiratet (es muss nicht portabel sein), also ist alles, was unter Linux funktioniert, in Ordnung.
Ich bin verwirrt über diese Frage. Es scheint eine Antwort zu enthalten, zeigt aber nicht an, was damit nicht stimmt. – amcnabb
Sieht aus, als hätte er den Code der akzeptierten Antwort in seine Frage kopiert. Vermutlich ist es die Lösung? – fantabolous
@amcnabb Ich entfernte die Antwort von der Frage – Djizeus