public void Invoke() { try { this.invocation.Invoke(); } catch (Exception ex) { Console.WriteLine(ex); } finally { this.invocation = null; obj = null; } }
public void ForwardInvocation(NSInvocation anInvocation) { anInvocation.Target = obj; invocation = anInvocation; if (BackgroundAfterForward) { Task.Run(() => RunInBackground()); return; } if (WaitUntilDone) { this.InvokeOnMainThread(Invoke); } else { this.BeginInvokeOnMainThread(Invoke); } }
public static void SetArgument(this NSInvocation invocation, NSObject arg, int index) { LibObjc.void_objc_msgSend_IntPtr_nint(invocation.Handle, Selector.GetHandle("setArgument:atIndex:"), arg?.Handle ?? IntPtr.Zero, index); }
public SasInvocation(NSInvocation invocation, string keyPath) { Invocation = invocation; KeyPath = keyPath; }