今天在写一个工具时,写着写着发现执行速度突然变慢。最后发现是string.StartsWith与EndsWith的锅,改为手动比较后,执行时间变成原来的1/5-1/10。代码如下 ,黄色背景是主要部分
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEditor;
using System.IO;
using System.Threading;
using System.Text.RegularExpressions;
using System;
public class XLogicCodeCheck
{
[MenuItem("代码检查/逻辑层代码检查")]
public static void StartLogicCodeCheck()
{
Debug.Log("逻辑层代码检查");
var path = "Assets/Scripts/Logic";
var files = Directory.GetFiles(path, "*.cs", SearchOption.AllDirectories);
var total = 0.0f;
var totalFind = 0;
var errLines = new List<string>(100);
foreach (var item in files)
{
var allines = File.ReadAllLines(item);