static void Main(string[] args)
{
Type t = typeof(C);
Utils.PerfCounter p = new Utils.PerfCounter();
string s = "";
p.Start();
for(int i=0; i<100000; i++)
{
s = t.FullName + ", " + t.Assembly.GetName().Name;
}
Console.WriteLine(p.Finish());
Console.WriteLine(s);
p.Start();
for(int i=0; i<100000; i++)
{
s = Assembly.CreateQualifiedName(t.Assembly.GetName().Name, t.FullName);
}
Console.WriteLine(p.Finish());
Console.WriteLine(s);
p.Start();
for(int i=0; i<100000; i++)
{
s = t.AssemblyQualifiedName;
int indx = s.IndexOf(',');
int indx2 = s.IndexOf(',', indx+1);
s = s.Remove(indx2, s.Length-indx2);
}
Console.WriteLine(p.Finish());
Console.WriteLine(s);
p.Start();
for(int i=0; i<100000; i++)
{
s = t.Assembly.FullName;
int indx = s.IndexOf(',');
s = s.Remove(indx, s.Length-indx);
s = t.FullName + ", " + s;
}
Console.WriteLine(p.Finish());
Console.WriteLine(s);
}
Вот перформанс каждого из них
4,361021
ConsoleApplication4.C, ConsoleApplication4
4,365712
ConsoleApplication4.C, ConsoleApplication4
0,5811521
ConsoleApplication4.C, ConsoleApplication4
0,08064517
ConsoleApplication4.C, ConsoleApplication4