Tworzę program, który implementuje pewien rodzaj pamięci podręcznej. Muszę używać jak najwięcej pamięci, jak to możliwe, aby to zrobić muszę zrobić dwie rzeczy:Sprawdź użycie pamięci w haskell
- sprawdzić ile pamięci jest nadal dostępne w systemie (tylko w pamięci RAM, a nie swap)
- sprawdzić ile pamięci mój Aplikacja już korzysta.
Potrzebuję niezależnego od platformy rozwiązania (Linux, Windows itp.).
Za pomocą tych dwóch informacji zmniejszę rozmiar pamięci podręcznej lub ją powiększę. Jak mogę uzyskać te informacje w Haskell? Czy są jakieś pakiety, które mogą dostarczyć te informacje?
"Sprawdź, ile pamięci wciąż jest dostępne w systemie". To pytanie nie ma wiele sensu. Masz plik wymiany, który może dorastać do 2 TB. Czy cała ta pamięć jest "dostępna"? Jeśli zajmiesz się tym wszystkim, twój system zatrzyma się. Być może chcesz sprawdzić pamięć fizyczną. Ale co, jeśli masz otwartych 300 kart w przeglądarce, które siedzą nietknięte przez tydzień? Są gotowe do wymiany na kroplę kapelusza, ale teraz zajmują 99,5% fizycznej pamięci, więc nie masz nic "dostępnego". –
@ n.m. Myślę, że to oczywiste, że aby zaimplementować pamięć podręczną, potrzebuję wolnej pamięci RAM, a nie SWAP. Budowanie pamięci podręcznej, która spowoduje zamiany systemu, nie jest dobrym pomysłem. ; p – remdezx
Dlaczego nie pozwolić użytkownikowi określić rozmiar pamięci podręcznej? Mogą nie chcieć programu, który i tak automatycznie używa całej pamięci RAM. –