public static Task <ulong> LenAsync(NativeHandle entriesHandle)
        {
            var tcs = new TaskCompletionSource <ulong>();
            MDataEntriesLenCb callback = (_, len) => {
                // TODO: no result?

                tcs.SetResult(len);
            };

            AppBindings.MDataEntriesLen(Session.AppPtr, entriesHandle, callback);

            return(tcs.Task);
        }
Exemple #2
0
        public static Task <ulong> MDataEntriesLenAsync(ulong entriesHandle)
        {
            var tcs = new TaskCompletionSource <ulong>();
            MDataEntriesLenCb callback = null;

            callback = (self, len) => {
                // TODO: no result?

                tcs.SetResult(len);
                CallbackManager.Unregister(callback);
            };

            CallbackManager.Register(callback);
            NativeBindings.MDataEntriesLen(Session.AppPtr, entriesHandle, Session.UserData, callback);

            return(tcs.Task);
        }
Exemple #3
0
 public static extern void MDataEntriesLenNative(IntPtr appPtr, ulong entriesHandle, IntPtr self, MDataEntriesLenCb callback);
Exemple #4
0
 public void MDataEntriesLen(IntPtr appPtr, ulong entriesHandle, IntPtr self, MDataEntriesLenCb callback)
 {
     MDataEntriesLenNative(appPtr, entriesHandle, self, callback);
 }
 public void MDataEntriesLen(IntPtr appPtr, ulong entriesHandle, MDataEntriesLenCb callback)
 {
     MDataEntriesLenNative(appPtr, entriesHandle, callback.ToHandlePtr(), OnMDataEntriesLenCb);
 }