Rumah >pembangunan bahagian belakang >C++ >Bolehkah saya membuat kaedah utama aplikasi konsol saya tidak segerak?
Apabila cuba menetapkan kaedah utama dalam aplikasi konsol untuk tidak segerak, ralat mungkin ditemui: "Kaedah utama yang tidak dapat menentukan pengubah 'async' dalam kaedah utama aplikasi konsol".
had pengkompil
Secara sejarah, pengkompil Visual Studio mengehadkan penggunaan pengubah async pada kaedah utama. Ini adalah untuk menghalang pelaksanaan asynchronous tingkah laku penyegerakan semula jadi program konsol.
Sokongan utama asynchronous
. Ini membolehkan struktur kod berikut:
Memahami tingkah laku
<code class="language-csharp">class Program { static async Task Main(string[] args) { // 异步代码在此处 } }</code>
Elakkan prosedur dari keluar
Untuk mengelakkan prosedur dari keluar, perlu menyediakan konteks yang serasi dengan keserasian tak segerak untuk kaedah utama. Konteks ini mengekalkan program dalam keadaan aktiviti semasa operasi operasi tak segerak.pilihan konteks
Perpustakaan NUGET:
Gunakan asyncContext dalam beg nito.asyncex nuget.
Asynchronous CTP: GoneralthreadaffineContext dalam CTP asynchronous (jika ada).
gelung utama adat:Atas ialah kandungan terperinci Bolehkah saya membuat kaedah utama aplikasi konsol saya tidak segerak?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!