2016-07-07 18 views
1

Ich habe versucht, ein Programm in Haskell zu schreiben, und ich wollte eine Funktion schreiben, die, wenn sie aufgerufen wird, mir den freien Speicher und den gesamten Speicher bei dieser Instanz gibt. Ich weiß, dass ich in Java etwas wie runtime.getruntime().totalmemory() innerhalb einer Methode schreiben kann. Ich bin ziemlich neu in Haskell und kann nicht herausfinden, wie man so etwas in meinem Programm fest programmiert.Laufzeitspeicher Haskell

Antwort

2

Sie können die getGCStats Funktion in GHC.Stats verwenden, um die Speichermenge abzurufen, die für den letzten GC verwendet wurde (currentBytesUsed).

Sie müssen möglicherweise Ihr Programm mit -rtsopts kompilieren und es mit +RTS -T ausführen, um die Statistiken zu aktivieren.