我已创建此代码,但尝试向其添加更多功能
public static int HowManyCores()
{
int CoresNumber = Environment.ProcessorCount;
try
{
return CoresNumber;
}
catch
{
return CoresNumber = 2;
}
}
如果因任何原因失败,我希望函数返回“2”。另外我想返回CoresNumber -1(所以如果它找到4它返回3)也是另一种情况:如果CoresNumer小于2(包括)返回2.
答案 0 :(得分:1)
删除try catch并使用
return CoresNumber > 2 ? CoresNumber - 1 : 2;
答案 1 :(得分:1)
正如瓦迪姆所说,它不会抛出异常。所以你可以试试:
public static int GetCoreCount()
{
int cores = Environment.ProcessorCount;
if (cores <= 2) { return 2; }
else { return cores - 1; }
}
答案 2 :(得分:0)
我可以给你这个代码:
public static int HowManyCores()
{
int CoresNumber = -1;
try
{
CoresNumber = Environment.ProcessorCount;
if (CoresNumber <= 2) { CoresNumber = 2; }
}
catch
{
// Log maybe
}
return CoresNumber;
}
虽然你可以阅读here它不应该抛出任何异常