c# ToString 系列函数 效率 ,以及无法多线程加速

  revit 软件 模型导出, 只能c#二次开发。发现效率很低。测试发现,对数据 格式化为字符串的过程相当低效率。:

仅仅是 格式化一个浮点数 string.Format("{0}{1}{2}{3}{4}", -xyz.X, m_strSplit, xyz.Y, m_strSplit, xyz.Z); 

执行 460308 次,耗时大约10秒, 使用c++ :

    float fX(0), fY(10000.001), fZ(0.00001);
    for (int i = 0; i < nCount; i++)
    {
        sprintf(szTmp, "%.6f%s %.6f%s %.6f", fX, ",", fY, ",", fZ);

    }

  仅仅消耗 1秒。

  其他 未遇到 不做评价。 这个效率,string.Format() 即便使用多线程 也无法加速,似乎底层做了单线程限制; c# 使用可得十分小心。



猜你喜欢

转载自blog.csdn.net/zsyddl2/article/details/80691960