コード例 #1
0
 public ProcessMonitor(int processId, ProcessMonitorFlags monitorKind = ProcessMonitorFlags.Exit, DispatchQueue queue = null)
 {
     if (type_proc == IntPtr.Zero)
     {
         type_proc = Dlfcn.dlsym(Libraries.System.Handle, "_dispatch_source_type_proc");
     }
     this.queue = queue;
     handle     = dispatch_source_create(type_proc,
                                         handle: (IntPtr)processId,
                                         mask:   (IntPtr)monitorKind,
                                         queue:  queue == null ? IntPtr.Zero : queue.Handle);
 }
コード例 #2
0
 public ProcessMonitor(int processId, ProcessMonitorFlags monitorKind = ProcessMonitorFlags.Exit, DispatchQueue queue = null)
 {
     if (type_proc == IntPtr.Zero)
         type_proc = Dlfcn.dlsym (Libraries.System.Handle, "_dispatch_source_type_proc");
     this.queue = queue;
     handle = dispatch_source_create (type_proc,
                      handle: (IntPtr) processId,
                      mask:   (IntPtr) monitorKind,
                      queue:  queue == null ? IntPtr.Zero : queue.Handle);
 }