Example #1
0
        public void StartSendInitialMetadata(SendCompletionHandler callback, MetadataArraySafeHandle metadataArray)
        {
            var ctx = BatchContextSafeHandle.Create();

            completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
            grpcsharp_call_send_initial_metadata(this, ctx, metadataArray).CheckOk();
        }
Example #2
0
        public void StartSendMessage(SendCompletionHandler callback, byte[] payload, WriteFlags writeFlags, bool sendEmptyInitialMetadata)
        {
            var ctx = BatchContextSafeHandle.Create();

            completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
            grpcsharp_call_send_message(this, ctx, payload, new UIntPtr((ulong)payload.Length), writeFlags, sendEmptyInitialMetadata).CheckOk();
        }
Example #3
0
        private void ThreadBody(int iterations, int payloadSize)
        {
            // TODO(jtattermusch): parametrize by number of pending completions.
            // TODO(jtattermusch): parametrize by cached/non-cached BatchContextSafeHandle

            var completionRegistry = new CompletionRegistry(environment);
            var cq   = CompletionQueueSafeHandle.CreateAsync(completionRegistry);
            var call = CreateFakeCall(cq);

            var sendCompletionHandler = new SendCompletionHandler((success) => { });
            var payload    = new byte[payloadSize];
            var writeFlags = default(WriteFlags);

            var stopwatch = Stopwatch.StartNew();

            for (int i = 0; i < iterations; i++)
            {
                call.StartSendMessage(sendCompletionHandler, payload, writeFlags, false);
                var callback = completionRegistry.Extract(completionRegistry.LastRegisteredKey);
                callback.OnComplete(true);
            }
            stopwatch.Stop();
            Console.WriteLine("Elapsed millis: " + stopwatch.ElapsedMilliseconds);

            cq.Dispose();
        }
Example #4
0
        public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata)
        {
            var ctx = BatchContextSafeHandle.Create();

            completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
            grpcsharp_call_send_status_from_server(this, ctx, status.StatusCode, status.Detail, metadataArray, sendEmptyInitialMetadata).CheckOk();
        }
Example #5
0
        public void StartSendCloseFromClient(SendCompletionHandler callback)
        {
            var ctx = BatchContextSafeHandle.Create();

            completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
            grpcsharp_call_send_close_from_client(this, ctx).CheckOk();
        }
Example #6
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata,
                                       byte[] optionalPayload, WriteFlags writeFlags)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         var optionalPayloadLength = optionalPayload != null ? new UIntPtr((ulong)optionalPayload.Length) : UIntPtr.Zero;
         completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         Native.grpcsharp_call_send_status_from_server(this, ctx, status.StatusCode, status.Detail, metadataArray, sendEmptyInitialMetadata,
                                                       optionalPayload, optionalPayloadLength, writeFlags).CheckOk();
     }
 }
Example #7
0
 public void StartSendMessage(SendCompletionHandler callback, byte[] payload, WriteFlags writeFlags, bool sendEmptyInitialMetadata)
 {
     SendCompletionHandler = callback;
 }
Example #8
0
 public void StartSendInitialMetadata(SendCompletionHandler callback, MetadataArraySafeHandle metadataArray)
 {
     SendCompletionHandler = callback;
 }
Example #9
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata,
     byte[] optionalPayload, WriteFlags writeFlags)
 {
     SendStatusFromServerHandler = callback;
 }
Example #10
0
 public void StartSendCloseFromClient(SendCompletionHandler callback)
 {
     SendCompletionHandler = callback;
 }
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata,
     byte[] optionalPayload, WriteFlags writeFlags)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         var optionalPayloadLength = optionalPayload != null ? new UIntPtr((ulong)optionalPayload.Length) : UIntPtr.Zero;
         completionQueue.CompletionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         Native.grpcsharp_call_send_status_from_server(this, ctx, status.StatusCode, status.Detail, metadataArray, sendEmptyInitialMetadata,
             optionalPayload, optionalPayloadLength, writeFlags).CheckOk();
     }
 }
 public void StartSendMessage(SendCompletionHandler callback, byte[] payload, WriteFlags writeFlags, bool sendEmptyInitialMetadata)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         completionQueue.CompletionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         Native.grpcsharp_call_send_message(this, ctx, payload, new UIntPtr((ulong)payload.Length), writeFlags, sendEmptyInitialMetadata).CheckOk();
     }
 }
Example #13
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata,
                                       byte[] optionalPayload, WriteFlags writeFlags)
 {
     SendStatusFromServerHandler = callback;
 }
Example #14
0
 public void StartSendCloseFromClient(SendCompletionHandler callback)
 {
     SendCompletionHandler = callback;
 }
Example #15
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata)
 {
     SendCompletionHandler = callback;
 }
Example #16
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata)
 {
     SendCompletionHandler = callback;
 }
Example #17
0
 public void StartSendInitialMetadata(SendCompletionHandler callback, MetadataArraySafeHandle metadataArray)
 {
     SendCompletionHandler = callback;
 }
 public void StartSendCloseFromClient(SendCompletionHandler callback)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         completionQueue.CompletionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         Native.grpcsharp_call_send_close_from_client(this, ctx).CheckOk();
     }
 }
Example #19
0
 public void StartSendMessage(SendCompletionHandler callback, byte[] payload, WriteFlags writeFlags, bool sendEmptyInitialMetadata)
 {
     SendCompletionHandler = callback;
 }
 public void StartSendInitialMetadata(SendCompletionHandler callback, MetadataArraySafeHandle metadataArray)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         completionQueue.CompletionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         Native.grpcsharp_call_send_initial_metadata(this, ctx, metadataArray).CheckOk();
     }
 }
Example #21
0
 public void StartSendStatusFromServer(SendCompletionHandler callback, Status status, MetadataArraySafeHandle metadataArray, bool sendEmptyInitialMetadata)
 {
     using (completionQueue.NewScope())
     {
         var ctx = BatchContextSafeHandle.Create();
         completionRegistry.RegisterBatchCompletion(ctx, (success, context) => callback(success));
         grpcsharp_call_send_status_from_server(this, ctx, status.StatusCode, status.Detail, metadataArray, sendEmptyInitialMetadata).CheckOk();
     }
 }