コード例 #1
0
        public Task <byte[]> GetResultAsync(CancellationToken token = default)
        {
            NtEntry   handle = Entry.Handle;
            NtRpcCall call   = Handle;

            token.Register(() =>
            {
                NtCore.CancelRpcResult(handle, call);
            });
            return(Task.Run(() =>
            {
                return NtCore.GetRpcResult(handle, call, Span <byte> .Empty).ToArray();
            }));
        }
コード例 #2
0
 public void NT_CancelRpcResult(NtEntry entry, NtRpcCall call)
 {
     Native_NT_CancelRpcResult(entry, call);
 }
コード例 #3
0
 public RpcCall(NetworkTableEntry entry, NtRpcCall call)
 {
     Handle = call;
     Entry  = entry;
 }
コード例 #4
0
 public byte *NT_GetRpcResultTimeout(NtEntry entry, NtRpcCall call, UIntPtr *result_len, double timeout, NtBool *timed_out)
 {
     return(Native_NT_GetRpcResultTimeout(entry, call, result_len, timeout, timed_out));
 }
コード例 #5
0
 private static extern void Native_NT_CancelRpcResult(NtEntry entry, NtRpcCall call);
コード例 #6
0
 private static extern byte *Native_NT_GetRpcResultTimeout(NtEntry entry, NtRpcCall call, UIntPtr *result_len, double timeout, NtBool *timed_out);
コード例 #7
0
 public byte *NT_GetRpcResult(NtEntry entry, NtRpcCall call, UIntPtr *result_len)
 {
     return(Native_NT_GetRpcResult(entry, call, result_len));
 }
コード例 #8
0
 private static extern byte *Native_NT_GetRpcResult(NtEntry entry, NtRpcCall call, UIntPtr *result_len);
コード例 #9
0
 public void NT_PostRpcResponse(NtEntry entry, NtRpcCall call, byte *result, UIntPtr result_len)
 {
     Native_NT_PostRpcResponse(entry, call, result, result_len);
 }
コード例 #10
0
 private static extern void Native_NT_PostRpcResponse(NtEntry entry, NtRpcCall call, byte *result, UIntPtr result_len);