A nestacilo by nodifikovat metodu DoSomeWork nasledovnym sposobom?
internal void DoSomeWork()
{
lock(this)
{
for (int i = 0; i < 3; i++)
{
Console.WriteLine("{0} - {1}", Thread.CurrentThread.Name, i);
//probuzeni dalsiho vlakna
Monitor.Pulse(this);
//vzdani se zamku k objektu
Monitor.Wait(this);
}
Console.WriteLine("Vlakno {0} skoncilo svou cinnost", Thread.CurrentThread.Name);
/////////////////////////////////////////////////////////////////////////////////////////
Monitor.Pulse(this);
/////////////////////////////////////////////////////////////////////////////////////////
}
}