需要每1秒执行一次可用的空闲内存,因此我使用方法和计时器刻度,但它没有改变,它在标签文本中始终显示8081MB。
那么如何每隔1秒检查一次呢?因为使用计算机内存也要改变。
这是我的代码:
// Get Available Memory
public void getAvailableRAM()
{
ComputerInfo CI = new ComputerInfo();
ulong mem = ulong.Parse(CI.TotalPhysicalMemory.ToString());
lbl_Avilable_Memory.Text = (mem / (1024 * 1024) + " MB").ToString();
}
private void Form1_Load(object sender, EventArgs e)
{
// Get Available Memory Timer
ram_timer.Enabled = true;
// end memory
}
private void ram_timer_Tick(object sender, EventArgs e)
{
getAvailableRAM();
}
最佳答案
尝试一下...
包括对Microsoft.VisualBasic
dll的引用:
using Microsoft.VisualBasic.Devices;
...然后按照以下步骤更新标签:
lbl_Avilable_Memory.Text = new ComputerInfo().AvailablePhysicalMemory.ToString() + " bytes free";
...要么...
lbl_Avilable_Memory.Text = (ComputerInfo().AvailablePhysicalMemory / 1048576) + "mb free";
笔记:
AvailablePhysicalMemory
属性,引用ComputerInfo
类的TotalPhysicalMemory
属性。 getAvailableRAM()
方法。将ram_timer_tick
中的 call 替换为lbl_Avilable_Memory.Text = (ComputerInfo().AvailablePhysicalMemory / 1048576) + "mb free";
get
开头的方法应该返回一个值。如果要保留该方法,则建议将其重命名为SetLbl_Avilable_Memory()
。 available
单词拼写错误。