diff options
author | Christian Göttsche <cgzones@googlemail.com> | 2020-10-13 16:03:37 +0200 |
---|---|---|
committer | Christian Göttsche <cgzones@googlemail.com> | 2020-10-19 14:45:39 +0200 |
commit | 96e2a4259eb0cdf279b83d899f805d274d13a94f (patch) | |
tree | 5ba621678c8089032da1ae2721665d8f67b7bb2f /solaris | |
parent | 0db398d4c3472071b2814505242450cd8f831501 (diff) |
Continue to update generic data in paused mode
Generic data, as CPU and memory usage, are used by Meters.
In paused mode they would stop receiving updates and especially Graph
Meters would stop showing continuous data.
Improves: #214
Closes: #253
Diffstat (limited to 'solaris')
-rw-r--r-- | solaris/SolarisProcessList.c | 7 | ||||
-rw-r--r-- | solaris/SolarisProcessList.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/solaris/SolarisProcessList.c b/solaris/SolarisProcessList.c index 9662f830..2c59087d 100644 --- a/solaris/SolarisProcessList.c +++ b/solaris/SolarisProcessList.c @@ -374,10 +374,15 @@ int SolarisProcessList_walkproc(psinfo_t *_psinfo, lwpsinfo_t *_lwpsinfo, void * return 0; } -void ProcessList_goThroughEntries(ProcessList* this) { +void ProcessList_goThroughEntries(ProcessList* this, bool pauseProcessUpdate) { SolarisProcessList_scanCPUTime(this); SolarisProcessList_scanMemoryInfo(this); SolarisProcessList_scanZfsArcstats(this); + + // in pause mode only gather global data for meters (CPU/memory/...) + if (pauseProcessUpdate) + return; + this->kernelThreads = 1; proc_walk(&SolarisProcessList_walkproc, this, PR_WALK_LWP); } diff --git a/solaris/SolarisProcessList.h b/solaris/SolarisProcessList.h index c8a2d8d0..a138c3bf 100644 --- a/solaris/SolarisProcessList.h +++ b/solaris/SolarisProcessList.h @@ -60,6 +60,6 @@ void ProcessList_delete(ProcessList* pl); int SolarisProcessList_walkproc(psinfo_t *_psinfo, lwpsinfo_t *_lwpsinfo, void *listptr); -void ProcessList_goThroughEntries(ProcessList* this); +void ProcessList_goThroughEntries(ProcessList* this, bool pauseProcessUpdate); #endif |