Ejemplo n.º 1
0
 public static bool bgl_condvar_wait(condvar c, mutex o)
 {
     lock( c ) {
     try
     {
        bgl_mutex_unlock( o );
        Monitor.Wait(c);
        bgl_mutex_lock( o );
        return true;
     }
     catch(Exception)
     {
        return false;
     }
      }
 }
Ejemplo n.º 2
0
 public static bool bgl_condvar_timed_wait(condvar c, mutex o, int ms)
 {
     lock( c ) {
     try
     {
        bool res;
        bgl_mutex_unlock( o );
        res = Monitor.Wait(c, ms);
        bgl_mutex_lock( o );
        return res;
     }
     catch(Exception)
     {
        return false;
     }
      }
 }
Ejemplo n.º 3
0
 public static Object BGL_CONDVAR_NAME(condvar o)
 {
     return o.name;
 }
Ejemplo n.º 4
0
        public static bool bgl_condvar_signal(condvar c)
        {
            lock( c ) {
            Monitor.Pulse(c);
             }

             return true;
        }
Ejemplo n.º 5
0
        public static bool bgl_condvar_broadcast(condvar c)
        {
            lock( c ) {
            Monitor.PulseAll(c);
             }

             return true;
        }