docs: use async main

* Removed text async

* Updated code

* Added main as proxy task
This commit is contained in:
Hitmasu
2021-05-29 10:25:58 -03:00
committed by GitHub
parent fabe034daa
commit 125f6c7862
4 changed files with 6 additions and 12 deletions

View File

@@ -80,15 +80,11 @@ recommended for these operations to be awaited in a
properly established async context whenever possible. properly established async context whenever possible.
To establish an async context, we will be creating an async main method To establish an async context, we will be creating an async main method
in your console application, and rewriting the static main method to in your console application.
invoke the new async main.
[!code-csharp[Async Context](samples/first-bot/async-context.cs)] [!code-csharp[Async Context](samples/first-bot/async-context.cs)]
As a result of this, your program will now start and immediately As a result of this, your program will now start into an async context.
jump into an async context. This allows us to create a connection
to Discord later on without having to worry about setting up the
correct async implementation.
> [!WARNING] > [!WARNING]
> If your application throws any exceptions within an async context, > If your application throws any exceptions within an async context,

View File

@@ -1,7 +1,6 @@
public class Program public class Program
{ {
public static void Main(string[] args) public static Task Main(string[] args) => new Program().MainAsync();
=> new Program().MainAsync().GetAwaiter().GetResult();
public async Task MainAsync() public async Task MainAsync()
{ {

View File

@@ -2,8 +2,7 @@ public class Program
{ {
private DiscordSocketClient _client; private DiscordSocketClient _client;
public static void Main(string[] args) public static Task Main(string[] args) => new Program().MainAsync();
=> new Program().MainAsync().GetAwaiter().GetResult();
public async Task MainAsync() public async Task MainAsync()
{ {

View File

@@ -10,11 +10,11 @@ using Discord.WebSocket;
class Program class Program
{ {
// Program entry point // Program entry point
static void Main(string[] args) static Task Main(string[] args)
{ {
// Call the Program constructor, followed by the // Call the Program constructor, followed by the
// MainAsync method and wait until it finishes (which should be never). // MainAsync method and wait until it finishes (which should be never).
new Program().MainAsync().GetAwaiter().GetResult(); return new Program().MainAsync();
} }
private readonly DiscordSocketClient _client; private readonly DiscordSocketClient _client;