Beispiel #1
0
        public AsyncWatcher(Loop loop, AsyncWatcherCallback callback) : base(loop)
        {
            this.callback = callback;

            unmanaged_watcher          = new UnmanagedAsyncWatcher();
            unmanaged_watcher.callback = unmanaged_callback_ptr;

            InitializeUnmanagedWatcher(unmanaged_watcher);
        }
Beispiel #2
0
        private static void StaticCallback(IntPtr loop, IntPtr watcher, EventTypes revents)
        {
            UnmanagedAsyncWatcher iow = (UnmanagedAsyncWatcher)Marshal.PtrToStructure(watcher, typeof(UnmanagedAsyncWatcher));

            GCHandle     gchandle = GCHandle.FromIntPtr(iow.data);
            AsyncWatcher w        = (AsyncWatcher)gchandle.Target;

            w.callback(w.Loop, w, revents);
        }
Beispiel #3
0
        public AsyncWatcher(Loop loop, AsyncWatcherCallback callback)
            : base(loop)
        {
            this.callback = callback;

            unmanaged_watcher = new UnmanagedAsyncWatcher ();
            unmanaged_watcher.callback = CallbackFunctionPtr;

            InitializeUnmanagedWatcher (unmanaged_watcher);
        }