Exemplo n.º 1
0
        static void AtEvent1_Invoke(IntPtr AtEvent1_Context, Tuple e)
        {
            AtEvent1_Data = e;
            // notify wait handler
            AtEvent1_PollWait.Set();

            AtEvent1_InvokeWait.WaitOne();
        }
Exemplo n.º 2
0
        public static Tuple AtEvent1_Poll(
            IntPtr AtEvent1_Context
            )
        {

            if (AtEvent1_InvokeWait_Counter == 0)
                AtEvent1_InvokeWait_Counter = 1;
            else
                AtEvent1_InvokeWait.Set();

            // wait for it...
            AtEvent1_PollWait.WaitOne();


            var r = AtEvent1_Data;

            AtEvent1_Data = null;

            
            return r;
        }
Exemplo n.º 3
0
 public static void AtEvent1_EndAsync(
     IntPtr AtEvent1_Context
     )
 {
     AtEvent1_Data = null;
     AtEvent1_PollWait.Set();
     AtEvent1_PollWait = null;
     AtEvent1_InvokeWait = null;
     // release wait handler
 }