예제 #1
0
 public static void Create(IMeasureRepository repository)
 {
     //Lock ロックの中の処理をしている間は_entitiesの値をみにきてもロックが抜けるまで待つ、抜けたら使いたい人が通る
     lock (((ICollection)_entities).SyncRoot)
     {
         _entities.Clear();
         _entities.AddRange(repository.GetLatests());
     }
 }
예제 #2
0
 /// <summary>
 /// リストを作成する
 /// </summary>
 /// <param name="repository">計測リポジトリー</param>
 public static void Create(IMeasureRepository repository)
 {
     // publicになっているので複数からアクセスされる可能性がある
     // 一つだけのアクセスlockで保証する
     lock (((ICollection)_entities).SyncRoot) {
         _entities.Clear();
         // リストを取得
         _entities.AddRange(repository.GetLatests());
     }
 }