Rumah > pembangunan bahagian belakang > C++ > Bagaimanakah saya Boleh Memanggil Kaedah Asynchronous dari Kaedah Utama() dalam C#?

Bagaimanakah saya Boleh Memanggil Kaedah Asynchronous dari Kaedah Utama() dalam C#?

Barbara Streisand
Lepaskan: 2024-12-29 21:22:11
asal
656 orang telah melayarinya

How Can I Call Asynchronous Methods from the Main() Method in C#?

Memanggil Kaedah Async daripada Main()

Salah satu ciri baharu yang diperkenalkan dalam C# ialah sokongan untuk pengaturcaraan tak segerak. Ini membolehkan anda melakukan operasi yang berjalan lama tanpa menyekat urutan utama, yang boleh membawa kepada antara muka pengguna yang lebih responsif.

Dalam sampel kod yang disediakan, anda mempunyai kaedah async dipanggil Go() yang anda mahu panggilan daripada kaedah Utama(). Untuk melakukan ini, anda boleh menggunakan salah satu daripada dua pendekatan:

Pilihan 1: Menggunakan async/wait (C# 7.1 dan lebih baharu)

Dalam C# 7.1 dan lebih baharu, anda boleh menggunakan kata kunci async untuk menjadikan kaedah Main() anda sebagai asynchronous. Ini membolehkan anda menunggu keputusan kaedah Go() tanpa menyekat utas utama.

static async Task Main(string[] args)
{
    test t = new test();
    await t.Go();
    Console.WriteLine("finished");
    Console.ReadKey();
}
Salin selepas log masuk

Pilihan 2: Menggunakan Penyekatan (untuk versi C# sebelum 7.1)

Untuk versi C# sebelum 7.1, anda boleh menggunakan kaedah Wait() untuk menyekat utas utama sehingga kaedah Go() mempunyai selesai.

static void Main(string[] args)
{
    test t = new test();
    t.Go().Wait();
    Console.WriteLine("finished");
    Console.ReadKey();
}
Salin selepas log masuk

Pendekatan yang anda gunakan dalam sampel kod anda, yang melibatkan panggilan balik, tidak diperlukan. Menggunakan sama ada corak async/wait atau kaedah Wait() akan membolehkan anda memanggil kaedah async dari Main() dengan cara yang mudah.

Atas ialah kandungan terperinci Bagaimanakah saya Boleh Memanggil Kaedah Asynchronous dari Kaedah Utama() dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan