performancecounter

13/01/2004 - 18:08 por sergi | Informe spam
Hola,

Necesito saber la memoria ram que está consumiendo una instancia de proceso.
Para ello, utilizo System.Diagnostics.PerformanceCounter, no obstante no sé
qué valor asignarle a la propiedad CounterName para que me devuelva el
espacio de memoria ram que ocupa la instancia.

<code>
using System;

using System.Diagnostics;

namespace InOutShell2

{


public class PerformanceTracker

{

private PerformanceCounter directorProjectorCounter;

private System.Timers.Timer trackTimer;

public PerformanceTracker()

{

directorProjectorCounter = new PerformanceCounter();

directorProjectorCounter.CategoryName = "Proceso";

directorProjectorCounter.CounterName = "Espacio de trabajo";

directorProjectorCounter.InstanceName = "ICQLite";


trackTimer = new System.Timers.Timer();

trackTimer.Interval = 1000;


}

public void StartTracking()

{

trackTimer.Elapsed +=new
System.Timers.ElapsedEventHandler(trackTimer_Elapsed);

trackTimer.Start();

}

public void StopTracking()

{

trackTimer.Elapsed -= new
System.Timers.ElapsedEventHandler(trackTimer_Elapsed);

trackTimer.Stop();

}

private void trackTimer_Elapsed(object sender,
System.Timers.ElapsedEventArgs e)

{


Console.WriteLine(directorProjectorCounter.NextValue());

}

}

}

</code>
 

Leer las respuestas

#1 sergi
13/01/2004 - 19:16 | Informe spam
perdonad, me acabo de dar cuenta de que ya lo estaba haciendo bien ;)

"sergi" wrote in message
news:#z#
Hola,

Necesito saber la memoria ram que está consumiendo una instancia de


proceso.
Para ello, utilizo System.Diagnostics.PerformanceCounter, no obstante no



qué valor asignarle a la propiedad CounterName para que me devuelva el
espacio de memoria ram que ocupa la instancia.

<code>
using System;

using System.Diagnostics;

namespace InOutShell2

{


public class PerformanceTracker

{

private PerformanceCounter directorProjectorCounter;

private System.Timers.Timer trackTimer;

public PerformanceTracker()

{

directorProjectorCounter = new PerformanceCounter();

directorProjectorCounter.CategoryName = "Proceso";

directorProjectorCounter.CounterName = "Espacio de trabajo";

directorProjectorCounter.InstanceName = "ICQLite";


trackTimer = new System.Timers.Timer();

trackTimer.Interval = 1000;


}

public void StartTracking()

{

trackTimer.Elapsed +=new
System.Timers.ElapsedEventHandler(trackTimer_Elapsed);

trackTimer.Start();

}

public void StopTracking()

{

trackTimer.Elapsed -= new
System.Timers.ElapsedEventHandler(trackTimer_Elapsed);

trackTimer.Stop();

}

private void trackTimer_Elapsed(object sender,
System.Timers.ElapsedEventArgs e)

{


Console.WriteLine(directorProjectorCounter.NextValue());

}

}

}

</code>


Preguntas similares