Monitor: try to enter : Monitor « Thread « C# / CSharp Tutorial






using System;
using System.Threading;

class MainClass 
{
  [STAThread]
  static void Main(string[] args)
  {
    object t = new object();
    int r = 0;
    try
    {
      if ( Monitor.TryEnter( t, 250 ) )
      {
        r++;
      }
    }
    finally
    {
      try
      {
        Monitor.Exit( t );
      }
      catch( SynchronizationLockException sle )
      {
        Console.WriteLine(sle);
      }
    }
  }
}








20.19.Monitor
20.19.1.Use Wait() and Pulse() to create a ticking clock
20.19.2.Use Monitors
20.19.3.Monitor: Enter and Exit
20.19.4.Monitor: try to enter
20.19.5.Coordinate two threads using Monitor
20.19.6.Use Monitor to control more than one Threads
20.19.7.Increment Monitor
20.19.8.Monitor Pool
20.19.9.Throw exception between Monitor.Enter and Montor.Exit
20.19.10.Using A Monitor
20.19.11.Use lock and Monitor to coordinate Producer and Consumer