예제 #1
0
        public void DispatchBarrierSync(DispatchBlock block)
        {
            if (block == null)
            {
                throw new ArgumentNullException(nameof(block));
            }

            dispatch_barrier_sync(GetCheckedHandle(), block.GetCheckedHandle());
        }
예제 #2
0
        public void DispatchAfter(DispatchTime when, DispatchBlock block)
        {
            if (block == null)
            {
                throw new ArgumentNullException(nameof(block));
            }

            dispatch_after(when.Nanoseconds, GetCheckedHandle(), block.GetCheckedHandle());
        }
예제 #3
0
 public void Notify(DispatchQueue queue, DispatchBlock block)
 {
     if (queue == null)
     {
         throw new ArgumentNullException(nameof(queue));
     }
     if (block == null)
     {
         throw new ArgumentNullException(nameof(block));
     }
     dispatch_group_notify(GetCheckedHandle(), queue.Handle, block.GetCheckedHandle());
 }
예제 #4
0
 public void Notify(DispatchQueue queue, DispatchBlock notification)
 {
     if (queue == null)
     {
         throw new ArgumentNullException(nameof(queue));
     }
     if (notification == null)
     {
         throw new ArgumentNullException(nameof(notification));
     }
     dispatch_block_notify(GetCheckedHandle(), queue.GetCheckedHandle(), notification.GetCheckedHandle());
 }