MCPcopy Index your code
hub / github.com/CapSoftware/Cap / collectPhase

Function collectPhase

apps/desktop/scripts/desktop-memory-soak.js:246–274  ·  view source on GitHub ↗
(name, seconds, intervalSeconds, tracked, options)

Source from the content-addressed store, hash-verified

244}
245
246async function collectPhase(name, seconds, intervalSeconds, tracked, options) {
247 const samples = [];
248 let currentTracked = tracked;
249 const totalSamples = sampleCount(seconds, intervalSeconds);
250
251 for (let index = 0; index < totalSamples; index += 1) {
252 const sample = buildSample(readProcesses(), currentTracked, options);
253 currentTracked = sample.tracked;
254 samples.push(sample);
255
256 const newPidSummary =
257 sample.newPids.length > 0 ? ` new:${sample.newPids.join(",")}` : "";
258
259 console.log(
260 `${name} ${index + 1}/${totalSamples} cap=${formatMb(sample.capTotalKb)} ws=${formatMb(sample.windowServerTotalKb)} media=${formatMb(sample.mediaTotalKb)} total=${formatMb(sample.grandTotalKb)}${newPidSummary}`,
261 );
262 console.log(` ${renderTopProcesses(sample)}`);
263
264 if (index < totalSamples - 1) {
265 await sleep(intervalSeconds * 1000);
266 }
267 }
268
269 return {
270 samples,
271 settled: pickSettledSample(samples, options.trailingSamples),
272 tracked: currentTracked,
273 };
274}
275
276function restoreStore(path, originalStoreContents) {
277 writeFileSync(path, originalStoreContents);

Callers 2

runAutomatedCycleFunction · 0.85
mainFunction · 0.85

Calls 7

buildSampleFunction · 0.90
formatMbFunction · 0.90
pickSettledSampleFunction · 0.90
sampleCountFunction · 0.85
readProcessesFunction · 0.85
renderTopProcessesFunction · 0.85
sleepFunction · 0.70

Tested by

no test coverage detected