Zwalnianie cache windowsa

0

Witam.
Tworzę aplikację w WPF'ie. Co jakiś czas mam problem wydajnościowy na słabszych komputerach (zaczyna brakować pamięci gdy komputer nie jest restartowany dłuższy czas).
Wpadłem na pomysł aby czyścić cache windowsa, takie zwalnianie pamięci jakie jest w Androidzie. Chciałbym uzyskać efekt podobny do tego jaki mam po restarcie komputera. Próbowałem użyć System.Runtime.Caching ale jest to zdaje się przestrzeń nazw dla aplikacji Webowych. Dla okienkowych nie mogę tego dodać do projektu.
Czy macie jakiś pomysł jak coś takiego zrealizować w aplikacji WPF'owej?
WP

0

Podpinam się pod temat - ciekawa idea - jestem również zainteresowany tym obszarem.

Ktoś próbował?

2
WojtexProgramista napisał(a):

Tworzę aplikację w WPF'ie.

Jak dużą? Co ona robi? Co robi źle? ;-)

Co jakiś czas mam problem wydajnościowy na słabszych komputerach

Jak słabszych?

(zaczyna brakować pamięci gdy komputer nie jest restartowany dłuższy czas).

Jaki to jest „dłuższy” czas?

Wpadłem na pomysł aby czyścić cache windowsa,

Jaki “cache”?

Czy macie jakiś pomysł jak coś takiego zrealizować w aplikacji WPF'owej?

Problem X-Y. Opisz dokładniej objawy.

0

Wydaje mi się, że w Androidzie to zabija uruchomione aplikacje. W Windows też powinno pomóc:)

0

Można też zrobić w DataGridView wykaz procesów i usług z procentowym wykorzystaniem RAM'u i CPU i ciąć niepotrzebne wątki.

1

Przecież już jest manager zadań.

0

tak, ale mozna napisac DAL'a czyli taki automat do zwalniania okreslonych procesow, albo do wylaczenia uslug po uruchomieniu plikow wynonywalnych .exe i ten automat bedzie sobie dzialal w watku w tle wg okreslonego harmonogramu np; co 60 minut i robota odpada do ubijania z managera

2

Można tylko aj bym nie chciał żeby mi coś ubijało procesy co minutę. Najbardziej pamieciozerna aplikacja u mnie jest np Visual Studio. No i po 60 minutach jeb. I nie ma.
Za to mam 2 gb wolnego ramu więcej:)

0

napisalem przykladowo i obrazowo, ok

0

Luz, piąteczek poczułem:)
Cos takiego to może w wersji mniej inwazyjnej. Monitor który co 10 minut będzie informował że jakiś proces zjada zasoby i co z tym zrobić. Zapamiętywanie akcji itp.

1

można, można, można. najpierw trzeba wiedzieć jakie jest źródło problemu.

0

Dzięki za podjęcie tematu.
Już uściślam mój problem.
Aplikacja obsługuje wydruki na drukarkach m.in. poprzez bufor wydruku. Sama nie jest duża i nie ma problemu z wyciekami pamięci. Jednakże na komputerach w Windows Embedded 2009 i procesorem Celeron oraz 2 GB RAM'u mam niewiele RAM'u do dyspozycji (na kompie oprócz tej aplikacyjki działa jeszcze SQL oraz duży program sprzedażowy). Zdarza się co jakiś czas, że spooler przestaje drukować, tzn. zaczyna zabierać RAM i zadanie drukowane zaczyna być restartowane (oczywiście restart ten nigdy nie dochodzi do końca). Ponieważ spooler zabiera całą dostępną pamięć (rozrasta się nawet do kilkuset MB) to pomyślałem że jakby dać mu trochę więcej pamięci w końcu może poradził by sobie z tym zadaniem.
Od razu mówię, że nie zadanie jest problemem gdyż testowaliśmy ten problem na tych samych danych ale na innym systemie i nie było problemu. Problem występuje tylko na kilku komputerach z podaną powyżej konfiguracją.

0

A próbowałeś dać więcej swapu?

0
WeiXiao napisał(a):

A próbowałeś dać więcej swapu?

A co masz konkretnie na myśli?

1 użytkowników online, w tym zalogowanych: 0, gości: 1