我在这段代码上运行AQTime,我发现.IndexOf占用了16%的时间而接近80%的另一块......他们似乎使用相同的IsEqual和其他例程.被称为116,000次,插入30,000件物品.List <>对象都没有超过200个元素.(我可能错误地使用AQTime,我正在研究这个)
class PointD : IEquatable<PointD>
{
public double X, Y, Z;
bool IEquatable<PointD>.Equals(PointD other)
{
return ((X == other.X) && (Y == other.Y) && (Z == other.Z));
}
}
class PerfTest
{
readonly List<PointD> _pCoord3Points = new List<PointD>();
public int NewPoints;
public int TotalPoints;
public PerfTest()
{
NewPoints = 0;
TotalPoints = 0;
}
public int CheckPointIndexOf(PointD pt)
{
int retIndex = _pCoord3Points.IndexOf(pt);
if (retIndex < 0)
{
_pCoord3Points.Add(pt);
NewPoints++;
}
TotalPoints++;
return retIndex;
}
public int CheckPointForBreak(PointD pt) …Run Code Online (Sandbox Code Playgroud) 使用openFileDialog不会返回正在使用的文件名,我只想要文件名我不在乎它是否正在使用
该文件很可能正在使用中,我只是希望能够找到该文件并检索其名称和位置以执行连接.
OpenFileDialog一直工作,直到我选择文件,然后它有一个弹出窗口,显示"正在使用文件".我不希望它检查,只返回文件名.