logo
down
shadow

What is the right approach with Async/Await/Task on function overloading in C#


What is the right approach with Async/Await/Task on function overloading in C#

Content Index :

What is the right approach with Async/Await/Task on function overloading in C#
Tag : chash , By : lili
Date : November 26 2020, 12:01 PM

To fix the issue you can do It will be executed almost in the same way but for the one with await it will add some overhead because the compiler will create a state-machine.
Compiler creates state machine for methods with async-await keywords so when the control flow reaches await it is returned to the calling method. The execution of async method continues when the awaited Task (or method that returns Task) has finished executing.

Comments
No Comments Right Now !

Boards Message :
You Must Login Or Sign Up to Add Your Comments .

Share : facebook icon twitter icon

What's the difference between awaiting async Task function and calling await inside a void function?


Tag : chash , By : qba73
Date : March 29 2020, 07:55 AM
it fixes the issue
What's the difference between awaiting async Task function and calling await inside a void function?
private async void Initializer()
{
    var store = InitLocalStore();
    await InitSyncContext(store); // <-- Here, await call
    ...
}

// Here returns Task (without having a return inside. No compile errors)
private async Task InitSyncContext(MobileServiceSQLiteStore store)
{
    await Client.SyncContext.InitializeAsync(store);
}
private void Initializer()
{
    var store = InitLocalStore();
    InitSyncContext(store); // <-- Here without await call
    ...
}

// Here is void but with a async call inside
private async void InitSyncContext(MobileServiceSQLiteStore store)
{
    await Client.SyncContext.InitializeAsync(store);
}
private async Task InitializerAsync()
{
    var store = InitLocalStore();
    await InitSyncContextAsync(store);
    ...
}

// Simply return the task that represents the async operation and let the caller await it
private Task InitSyncContextAsync(MobileServiceSQLiteStore store)
{
    return Client.SyncContext.InitializeAsync(store);
}

How to use async/await in scenario with multiple tasks with each task requiring a new async/await


Tag : chash , By : aspitzer
Date : March 29 2020, 07:55 AM
this one helps. It might be more sensible to split it by customer and async within that:
private async Task<Card> FindCardForCustomerAsync(string customer)
{
  var account = await _service.FindAccountAsync(customer);
  return await _service.FindCardAsync(account);
}

public async Task<Data> FindCustomersWithCards(string[] customers)
{
  var cardsTasks = customers.Select(FindCardForCustomerAsync);
  var cards = await Tasks.WhenAll(cardsTasks)
  …
}

Unable to get linq query data in the async ActionResult with await and task, Error: await can't be used with async metho


Tag : chash , By : Chris Hanley
Date : March 29 2020, 07:55 AM
around this issue The compiler returns the Task for you when you use the async and await pattern, (or more precisely) when you decorate your method with the async keyword
public async Task<IHttpActionResult> GetAllData(string user)

Should I await a 'async Task' function if I don't care its return value?


Tag : chash , By : Gilmar Souza Jr.
Date : March 29 2020, 07:55 AM

C# async / await question - getting "The return type of an async method must be void, Task or Task<T> even th


Tag : chash , By : Murali Ravipudi
Date : September 21 2020, 07:00 PM
will be helpful for those in need Normally you have to return whatever you declare the function returns.
Task<int> Bar()
{
    return Task.FromResult(1);
}
async Task Foo1()
{
    //No return needed.
}

async Task<int> Foo2()
{
    return 1; //Compiler converts the int to a Task<int> for you
}
async Task<Task<object>> Foo3()
{
    return Task.FromResult<object>(null);
}  
private async Task ClearDynamicSchedules(int accountID)
{
    log.Debug("Clearing existing schedules for account: " + accountID);

    string group = "AccountID:" + accountID;
    int count = 0;

    var groupMatcher = GroupMatcher<JobKey>.GroupEquals(group);
    var jobKeys = await this.Scheduler.Quartz.GetJobKeys(groupMatcher);
    foreach (var jobKey in jobKeys)
    {
        var detail = this.Scheduler.Quartz.GetJobDetail(jobKey);
        var triggers = await this.Scheduler.Quartz.GetTriggersOfJob(jobKey);
        foreach (ITrigger trigger in triggers)
        {
            await this.Scheduler.Quartz.UnscheduleJob(trigger.Key);
            count++;
        }
    }
    log.Debug("Schedules cleared for account: " + accountID + ", load schedules should follow. " + count.ToString() + " schedules removed");
    //No return
}
Related Posts Related QUESTIONS :
  • How to pass alert or notification message from controller to View?
  • C# to pause, turn on ssas server, backup cube.... how to?
  • How to execute DataTable.Select() for a column of custom class type for a particular element in that C#
  • how to connect mysql8.0 with C#
  • Passing incorrect values into MultiValueConverter by MultiBinding
  • Can i use IEnumerator as Update func?
  • How to convert API Json response to C# Array?
  • Blazor Textfield Oninput User Typing Delay
  • Performing both layout and render transform results in wrong output
  • uwp beforetextchanged cursor moving in front of text
  • How to keep duplicates from a string[] exclude words from a List and print them out
  • .Net Core Strings.Asc/Mid/Chr/Len missing even after importing Microsoft.VisualBasic
  • How to return to previous search page without being asked to Confirm Form Re-submission and keeping the results on ASP.N
  • How set a identity scaffolding item/page how initial page in asp.net MVC core?
  • LINQ isn't calling Dispose on my IEnumerator when using Union and Select, expected behavior or bug?
  • What is "ByteArray.uncompress()" in AS3 equivalent to in C#?
  • Getting a specific letter from a string variable for my simple guessing game for clues
  • Send an email with Outlook without a subject --- dialog box issue
  • passing List<MyModel> from my controller in the "WebInterfaceProject" to the processor method in "D
  • How to convert Word document created from template by OpenXML into MemoryStream?
  • How can I make a single slider that changes the color of an object?
  • Remap JSON parameter in c#
  • What is the difference between "this ref" and "ref this" when talking about C# 7.2 ref extension met
  • Convert OpenSSL encryption into native C#
  • Accessing Properties in Razor Pages
  • How to get SOAP element value
  • Projection after Group
  • C# error cannot convert sytem.text.regularexpressions.match to string
  • Issues with Save/Load System in a Text Based Adventure game made with ScriptableObjects in Unity
  • VS2019 MSBuild.exe - ASP .Net MVC project fails to publish when using PublishProfile, but works when using OutDir parame
  • Does <pages validateRequest="false" /> in Web.config still matter?
  • How to send new request to redirect URL with new access token
  • Attempt to invoke virtual method on a null object reference Xamarin LockScreen
  • "The attribute names could not be inferred from bind attribute 'bind-value'" exception in Blazor
  • How to fix ''System.ArgumentException" in c#?
  • C#. Ref returning delegate for ref extension method
  • Swashbuckle Swagger generate an actual guid
  • Trying to make thousands of database calls simultaneously - they stack instead of running concurently
  • run mstest from cmd using testcontainer
  • How to make M:N (many-to-many) relationship where both M and N are the same entities?
  • Consume COM DLL from multiple clients
  • Convert json string response representing UCHAR array to Byte array
  • Why does this LinqPad program produce different results on the second run?
  • ServiceStack how to use MaxLoginAttempts feature
  • What does "late-bound access to the destination object" mean?
  • How to load appsettings.json inside a Static class based on deploy environment so that I can use in other class librarie
  • dynamically add images to view
  • Are static extension methods on User object safe?
  • Process thousands of database calls simultaneously
  • Trying to decrypt a string with public key(not private) using bouncycastle in .net
  • How to retrieve the name of an usb device
  • Query many-to-many related data using Entity Framework Core
  • ASP.NET MVC : how to find the view from a controller?
  • Inconsistent behaviour using Entity Framework for ASP.NET MVC app vs windows service
  • AutoFixture Customize vs Build
  • How to change textbox location at the click of a mouse in live mode?
  • How can I deserialize a XML file without defining the parent node?
  • asp.net core how decrease class coupling
  • ASP.NET Core Razor Pages Routing With parameters
  • String Escaping With $ Interpolation and @ Encoding
  • shadow
    Privacy Policy - Terms - Contact Us © scrbit.com