public void Main() { source = new Source(this); loop = CFRunLoop.Current; loop.AddSource(source, CFRunLoop.ModeDefault); context = new Context(this); SynchronizationContext.SetSynchronizationContext(context); readyEvent.Set(); loop.Run(); cts.Dispose(); source.Dispose(); }
void eventTapThread() { tapThread = CFRunLoop.Current; tapThread.AddSource(eventPortSource, CFRunLoop.ModeCommon); tapThread.Run(); }