Junior — Middle
How can you implement a method so that it does not stop the main application from working?
sobes.tech AI
Answer from AI
To make a method execute asynchronously and not block the main thread of the application, in C# you can use the keywords async and await together with tasks (Task). This allows long-running operations to run in the background.
Example:
public async Task LongRunningMethodAsync()
{
await Task.Run(() => {
// Long operation
Thread.Sleep(5000);
});
}
// Call from the main thread
await LongRunningMethodAsync();
If you do not want to wait for completion, you can simply call the method without await, and it will run in parallel without blocking the main thread.