Как не старался воспроизвести то, о чем говорит drol не вышло
Foo foo = new Foo();
Thread instantiationThread = new Thread(() =>
{
do
{
foo = new Foo();
} while (true);
});
Thread checkInitializedThread = new Thread(() =>
{
do
{
if (!foo._initialized1 | !foo._initialized2)
{
Console.WriteLine("Bingo!!!");
}
} while (true);
});
instantiationThread.Start();
checkInitializedThread.Start();
class Foo
{
public bool _initialized1;
public bool _initialized2;
public Foo()
{
//Thread.Sleep(10);
_initialized1 = true;
Thread.Sleep(10);
_initialized2 = true;
}
}
Вот еще аналогичное мнение
http://rsdn.ru/forum/dotnet/5200476.1Автор: TK
Дата: 14.06.13
может это навеяло
http://msdn.microsoft.com/en-us/magazine/jj863136.aspx
?