How can i do to make sincronous bulk request?
Dim oResp As IEnumerable(Of SubmitSmResp) = (Await _Client.Submit(oBatch)).ToArray() Does not work without Await
I'm facing a lot of problems with await bulk requests and want to test sincronous requisition.
			
			
									
									
						How can i do to make Sincronous Bulk Requests?
- 
				developerlearn999
 - Posts: 85
 - Joined: Thu Jun 20, 2019 9:34 am
 
Re: How can i do to make Sincronous Bulk Requests?
i am doing the same in C#, i can't break the 100/sec.
which problem do you face?
			
			
									
									
						which problem do you face?
Re: How can i do to make Sincronous Bulk Requests?
What kind of problems are you facing with async methods?
You can use following extension method for sync submission.
C#
VB.NET
			
			
									
									
						You can use following extension method for sync submission.
C#
Code: Select all
   public static class SmppClientExtension
    {
        private static readonly TaskFactory syncTaskFactory = new TaskFactory(CancellationToken.None,
            TaskCreationOptions.None, TaskContinuationOptions.None, TaskScheduler.Default);
        public static IEnumerable<SubmitSmResp> SyncSubmit(this SmppClient client, IEnumerable<SubmitSm> batch)
        {
            return syncTaskFactory.StartNew(() => client.Submit(batch)).Unwrap().GetAwaiter().GetResult();
        }
    }
Code: Select all
   
   Public Module SmppClientExtension
		Private ReadOnly syncTaskFactory As New TaskFactory(CancellationToken.None, TaskCreationOptions.None, TaskContinuationOptions.None, TaskScheduler.Default)
		<System.Runtime.CompilerServices.Extension> _
		Public Function SyncSubmit(ByVal client As SmppClient, ByVal batch As IEnumerable(Of SubmitSm)) As IEnumerable(Of SubmitSmResp)
			Return syncTaskFactory.StartNew(Function() client.Submit(batch)).Unwrap().GetAwaiter().GetResult()
		End Function
   End Module