asynchelpers.runsync method
Penyelesaian umum adalah menggunakan kaedah . Kaedah ini membolehkan anda melakukan kaedah tugas tak segerak secara serentak, sama ada terdapat nilai pulangan. Gunakan kaedah ini: <:>
tiada nilai pulangan: AsyncHelpers.RunSync
panggilan
AsyncHelpers.RunSync(() => GetCustomers());
adalah kaedah asynchronous anda. AsyncHelpers.RunSync(() => GetCustomers());
GetCustomers()
Kaedah lain melibatkan penggunaan konteks penyegerakan tersuai, terutama Buat contoh , dan gunakan untuk menetapkannya kepada konteks penyegerakan semasa.
Gunakan untuk menerbitkan tugas -tugas asynchronous kepada konteks penyegerakan.
ExclusiveSynchronizationContext
Gunakan gelung mesej.
ExclusiveSynchronizationContext
SynchronizationContext.SetSynchronizationContext(syncContext);
Gunakan untuk menetapkan semula konteks ke nilai asalnya. syncContext.Post(async _ => { ... }, null);
Langkah berjaga -jaga syncContext.BeginMessageLoop();
Walaupun kaedah ini menyediakan penyelesaian, perlu diperhatikan bahawa pelaksanaan segerak kod asynchronous boleh menyebabkan penurunan prestasi dan kebuntuan yang berpotensi. Oleh itu, adalah disyorkan untuk menggunakan teknologi ini dengan berhati -hati, dan hanya menggunakannya apabila benar -benar diperlukan. Atas ialah kandungan terperinci Bagaimanakah saya boleh secara serentak menjalankan kaedah asynchronous dalam .net?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!