internal class Program
{
const string CategoryName = "JangHyeong";
const string CounterName = "Test";
static private bool looping = true;
// 1초마다 0~99 사이의 값으로 카운터를 남긴다.
static void Loop()
{
var random = new Random();
var counter = new PerformanceCounter(CategoryName, CounterName, false);
while (looping)
{
counter.RawValue = random.Next(100);
Thread.Sleep(1000);
}
}
static void Main(string[] args)
{
// 없으면 카운터를 생성한다.
if (PerformanceCounterCategory.Exists(CategoryName) == false)
{
CounterCreationData testCounterCreationData = new CounterCreationData();
testCounterCreationData.CounterName = CounterName;
testCounterCreationData.CounterType = PerformanceCounterType.NumberOfItems32;
var jangHyeongCounters = new CounterCreationDataCollection();
jangHyeongCounters.Add(testCounterCreationData);
PerformanceCounterCategory.Create(CategoryName, "JangHyeong Test Category", PerformanceCounterCategoryType.SingleInstance, jangHyeongCounters);
}
var thread = new Thread(Loop);
thread.Start();
Console.WriteLine("Start.");
Console.ReadLine();
Console.WriteLine("End.");
looping = false;
}
}
1초마다 "JangHyeong"-"Test" 카운터에 0~99의 랜덤한 숫자로 지표를 남기는 프로그램 샘플 코드.
테스트하려고 짰다가 나중에 다시 써먹으려고 포스팅 한다.
'Programming > C# & Unity' 카테고리의 다른 글
C# 람다 클로저 원리 (0) | 2023.08.26 |
---|---|
C# Foreach Closure (6) | 2023.06.18 |
C# 박싱 (2) | 2023.04.29 |
C# static 멤버 함수 (0) | 2022.11.20 |
C# Async Await 원리 (2) | 2022.11.16 |