我想根据可用物理内存量限制我创建的线程数。例如,一旦我达到只剩下7GB的实内存,我想停止创建新线程。我该怎么做?
答案 0 :(得分:4)
您可以使用Devices.ComputerInfo
获取可用物理内存的总量:
Dim info = New Microsoft.VisualBasic.Devices.ComputerInfo()
Dim gb = info.AvailablePhysicalMemory / 1024 / 1024 / 1024
While gb >= 7
' start your threads here ... '
gb = info.AvailablePhysicalMemory / 1024 / 1024 / 1024
End While