Bu makalemizde C# programlama dili ile bilgisayarın kullandığı RAM miktarının yüzdesel olarak nasıl ölçüldüğünü anlatmaya çalışacağım. Daha önce benzer konu olan C# İle Bilgisayarın Kullandığı CPU Miktarının Yüzdesel Ölçümü makalesini yazmıştım. CPU kullanımın ölçümü için kullandığım PerformanceCounter metodunu uygun parametrelerle burada da kullanabiliriz. Ama farklılık olsun diye burada farklı bir yöntem deneyeceğim.
Temel mantık olarak Bilgisayarın kullandığı RAM miktarının yüzdesel ölçümü için bilgisayarın dolu olan RAM miktarını toplam RAM miktarına bölmemiz yeterli olacaktır. Biz de bu işlemi uygulayacağız. Ama öncelikle bu iki değeri elde etmemiz gerekiyor.
Bilgisayarın kullandığı RAM miktarını bulabilmek için öncelikle projenize System.Management isim uzayını eklememiz gerekmektedir. İşlemleri yapabilmek için bu isim uzayı altında yer alan ManagementObjectSearcher sınıfını kullanacağın.
Öncelikle ManagementObjectSearcher sınıfını kullanarak tüm bilgisayar değerlerini çekeceğiz. Bu işlemden sonra ise bizim için gerekli olan iki alan mevcut RAM kullanımı ve toplam RAM miktarını ayrıştırarak bu değerlere göre yüzdesel bir değer çıkaracağız. Bu işlemler için yazılan kodlar aşağıda bir metot içerisinde toplanmıştır.
public double RamKullanimYuzdesiHesapla()
{
double percent = 0;
var wmiObject = new ManagementObjectSearcher("select * from Win32_OperatingSystem");
var memoryValues = wmiObject.Get().Cast().Select(mo => new
{
FreePhysicalMemory = Double.Parse(mo["FreePhysicalMemory"].ToString()),
TotalVisibleMemorySize = Double.Parse(mo["TotalVisibleMemorySize"].ToString())
}).FirstOrDefault();
if (memoryValues != null)
{
percent = ((memoryValues.TotalVisibleMemorySize - memoryValues.FreePhysicalMemory) / memoryValues.TotalVisibleMemorySize) * 100;
}
return percent;
}
Görüldüğü gibi bilgisayarın kullandığı Ram Miktarı FreePhysicalMemory özelliği içinde, toplam Ram miktarı ise TotalVisibleMemorySize özelliği içinde yer almaktadır. Son olarak memoryValues nesnesinin null'dan farklı olması durumunda kullanılan miktarı, toplam miktara bölerek yüzdesel bir değer çıkarıyoruz.
Konuya ilgi gösterip makaleyi okuduğunuz için teşekkürler. Umarım makalem faydalı olmuştur. Konuyla alakalı sorularınız olursa bana yazabilirsiniz...
Konuyla alakalı C# İle Bilgisayarın Kullandığı CPU Miktarının Yüzdesel Ölçümü makalesine buradan erişebilirsiniz.
Temel mantık olarak Bilgisayarın kullandığı RAM miktarının yüzdesel ölçümü için bilgisayarın dolu olan RAM miktarını toplam RAM miktarına bölmemiz yeterli olacaktır. Biz de bu işlemi uygulayacağız. Ama öncelikle bu iki değeri elde etmemiz gerekiyor.
Bilgisayarın kullandığı RAM miktarını bulabilmek için öncelikle projenize System.Management isim uzayını eklememiz gerekmektedir. İşlemleri yapabilmek için bu isim uzayı altında yer alan ManagementObjectSearcher sınıfını kullanacağın.
Öncelikle ManagementObjectSearcher sınıfını kullanarak tüm bilgisayar değerlerini çekeceğiz. Bu işlemden sonra ise bizim için gerekli olan iki alan mevcut RAM kullanımı ve toplam RAM miktarını ayrıştırarak bu değerlere göre yüzdesel bir değer çıkaracağız. Bu işlemler için yazılan kodlar aşağıda bir metot içerisinde toplanmıştır.
public double RamKullanimYuzdesiHesapla()
{
double percent = 0;
var wmiObject = new ManagementObjectSearcher("select * from Win32_OperatingSystem");
var memoryValues = wmiObject.Get().Cast
{
FreePhysicalMemory = Double.Parse(mo["FreePhysicalMemory"].ToString()),
TotalVisibleMemorySize = Double.Parse(mo["TotalVisibleMemorySize"].ToString())
}).FirstOrDefault();
if (memoryValues != null)
{
percent = ((memoryValues.TotalVisibleMemorySize - memoryValues.FreePhysicalMemory) / memoryValues.TotalVisibleMemorySize) * 100;
}
return percent;
}
Görüldüğü gibi bilgisayarın kullandığı Ram Miktarı FreePhysicalMemory özelliği içinde, toplam Ram miktarı ise TotalVisibleMemorySize özelliği içinde yer almaktadır. Son olarak memoryValues nesnesinin null'dan farklı olması durumunda kullanılan miktarı, toplam miktara bölerek yüzdesel bir değer çıkarıyoruz.
Konuya ilgi gösterip makaleyi okuduğunuz için teşekkürler. Umarım makalem faydalı olmuştur. Konuyla alakalı sorularınız olursa bana yazabilirsiniz...
Konuyla alakalı C# İle Bilgisayarın Kullandığı CPU Miktarının Yüzdesel Ölçümü makalesine buradan erişebilirsiniz.
Reklam nasıl aldınız blogspotda rica edersem onun haqqında bilgi palaşırmısınız
YanıtlaSil