È possibile ottenere la dimensione della memoria disponibile del sistema in C# .NET? se sì come?Come ottenere la dimensione della memoria di sistema disponibile?
risposta
Utilizzare Microsoft.VisualBasic.Devices.ComputerInfo.TotalPhysicalMemory
.
Fare clic con il tasto destro del mouse sul progetto, Aggiungi riferimento, selezionare Microsoft.VisualBasic
.
Da EggHeadCafe dopo googling per 'c memoria di sistema #'
Sarà necessario aggiungere un riferimento a System.Management
using System;
using System.Management;
namespace MemInfo
{
class Program
{
static void Main(string[] args)
{
ObjectQuery winQuery = new ObjectQuery("SELECT * FROM Win32_LogicalMemoryConfiguration");
ManagementObjectSearcher searcher = new ManagementObjectSearcher(winQuery);
foreach (ManagementObject item in searcher.Get())
{
Console.WriteLine("Total Space = " + item["TotalPageFileSpace"]);
Console.WriteLine("Total Physical Memory = " + item["TotalPhysicalMemory"]);
Console.WriteLine("Total Virtual Memory = " + item["TotalVirtualMemory"]);
Console.WriteLine("Available Virtual Memory = " + item["AvailableVirtualMemory"]);
}
Console.Read();
}
}
}
uscita:
Total Space = 4033036
Memoria fisica totale = 2095172
Memoria virtuale totale = 1933904
Memoria virtuale disponibile = 116280
Win32_LogicalMemoryConfiguration non è disponibile da Vista in poi. Sostituire con CIM_OperatingSystem e utilizzare TotalVisibleMemorySize, TotalVirtualMemorySize ecc. Il codice sopra genera un'eccezione su Win7 e probabilmente anche su Vista. – Canacourse
In seguito al commento di @ Canacourse, consultare: http://msdn.microsoft.com/en-us/library/aa387937(v=vs.85).aspx per informazioni sulla classe CIM_OperatingSystem. –
Utilizzando i contatori delle prestazioni accessibili tramite System.Diagnostics sarà un'opzione.
consultare http://www.dotnetspider.com/resources/4612-Find-Memory-usage-CPU-usage.aspx
Spero che questo aiuti!
Questa risposta è basata su Hans Passant. La proprietà richiesta è AvailablePhysicalMemory in realtà. e (e TotalPhysicalMemory e altri) sono variabili di istanza, quindi dovrebbe essere
new ComputerInfo().AvailablePhysicalMemory
Funziona in C#, ma mi chiedo perché this page dice che per C#, "Questo linguaggio non è supportato o nessun esempio di codice è disponibile ".
Perché nessuno voleva per scriverlo .. – atamanroman
fielding, haha probabilmente! – David
No perché la sua parte del 'My' Namespace utilizzata in Visual Basic! Not C# - Includendo questa dll di Visual Basic esporrai queste scorciatoie sono così carini in VB.NET; E le persone che vanno in C# dopo VB iniziano a mancare. Bella risposta +1 – ppumkin
var performance = new System.Diagnostics.PerformanceCounter("Memory", "Available MBytes");
var memory = performance.NextValue();
- 1. Come trovare la dimensione della memoria virtuale e la dimensione della cache di un sistema Linux?
- 2. Come ottenere la dimensione della memoria della variabile?
- 3. Come ottenere la dimensione dell'oggetto in memoria?
- 4. come fa il sistema operativo a conoscere la dimensione reale della memoria fisica?
- 5. Memoria di sistema disponibile e utilizzata in Python?
- 6. Come ottenere l'attuale utilizzo della CPU e la memoria disponibile nel file batch?
- 7. Come ottenere la memoria disponibile/libera da ADB?
- 8. Come ottenere la memoria disponibile o utilizzata in C#
- 9. C# richiama la dimensione della cache del file di sistema
- 10. Mantenere l'utilizzo della memoria entro l'importo disponibile
- 11. Come posso ottenere memoria disponibile da mem_malloc di lwIP?
- 12. rilevamento della dimensione della pagina di memoria
- 13. Come ottenere una dimensione della scheda sd della memoria esterna (con scheda SD montata)?
- 14. La dimensione della riga del database Cassandra è limitata dalla memoria disponibile?
- 15. È possibile modificare la dimensione della pagina della memoria virtuale?
- 16. Come ottenere la dimensione esatta della directory della cache: android
- 17. Come aumentare la dimensione dell'heap della memoria su IntelliJ IDEA?
- 18. Ottieni la dimensione del sistema RAM
- 19. Come si determina la memoria del dispositivo disponibile in OpenCL?
- 20. Determinazione della memoria disponibile su Android
- 21. Qual è la dimensione massima della trama disponibile su iPad?
- 22. Come ottenere la dimensione della figura di matplotlib
- 23. Come posso ottenere la dimensione della cella UICollectionView di default?
- 24. Come ottenere la dimensione totale della RAM di un dispositivo?
- 25. allocazione memoria e dimensione 0: posso ottenere perdite di memoria?
- 26. Ottenere la dimensione della stringa in java (senza avere un oggetto Graphics disponibile)
- 27. dimensione di allocazione più grande della mappa di memoria?
- 28. Errore OutOfMemory anche se la memoria disponibile è disponibile
- 29. ridurre la dimensione della casella di memoria (vmdk)
- 30. Come posso ottenere la dimensione della memoria allocata dal mio programma?
puoi chiamare questo da C#? –
È una classe di framework .NET, disponibile in qualsiasi versione dal 2.0. Il nome dello spazio dei nomi è irrilevante. –
Questa è una pessima soluzione ... :(Non dovrei aggiungere un riferimento a VB per questo ... –