メンバー変数、属性、自動属性のパフォーマンスの違い.

1611 ワード

まず、クラスを作成します.
public class KVTable
{
public string Name;
}

書き込みコード
var kvt = new KVTable ();

My.Test.BeginTestTick();

for (int i = 0; i < 1000000; i++)
{
kvt.Name = i.ToString();
}

My.Test.EndTestTickAndShow();

実行時間600ミリ秒
 
に改心
public class KVTable
{
public string Name{get;set;}
}

実行時間2511ミリ秒
に改心
public class KVTable
{
 private string name;

public string Name
{
get { return name; }
set { name = value; }
}
}

実行時間は2511ミリ秒である.
 
结论属性と自動属性の性能は同じである.メンバー変数のパフォーマンスは、前の2つよりはるかに高い.