- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
public static DataSet GetSomeDataSet()
{
DataSet ds = null;
object locker = new object();
lock (locker)
{
if (ds == null)
{
// тут инициализация ds
return ds;
}
else return ds;
}
}
P.S. И где же здесь все-таки double checking?
UPD: The lock keyword marks a statement block as a critical section by obtaining the mutual-exclusion lock for a given object, executing a statement, and then releasing the lock.
Я это, того, зачем написал "попытка"? Конечно тут субъективное, и со зрением у меня плохо, но мне кажется автор хотел нечто подобное. Оп в комменте признаётся, что написал по памяти.
Ок, на этой ноте пожалуй и закончим спор ;) То что хотел выразить ОП, к сожалению, знает только он (а может и он не знает...).