Rumah >pembangunan bahagian belakang >C++ >Task.Run vs. Async-Rawan di WPF: Bilakah saya harus menggunakan yang mana untuk prestasi UI yang optimum?
Pilihan Task.run dan Async-Await dalam Aplikasi WPF: Pertimbangan Senibina
Dalam aplikasi WPF, pilih untuk menggunakan Task.run atau async-Owait, terutamanya apabila terdapat gerai di UI, ia adalah masalah biasa. Untuk menyelesaikan masalah ini, faktor -faktor berikut perlu dipertimbangkan:
<.> 1. UI BLOCK BLOCK:
Async-Await tidak dijalankan pada benang latar belakang. Sekiranya operasi menunggu adalah tugas CPU -intensif, ia boleh menyebabkan UI terjebak. Untuk mengelakkan ini, gunakan Task.run untuk mempercayakan tugas tersebut ke benang latar belakang. <.> 2. Pengoptimuman kecekapan thread:
Gunakan Task.run untuk membungkus panggilan tak segerak paling luar untuk mengurangkan overhead benang .NET. Ini memastikan bahawa semua operasi Async-Operations berikutnya dalam panggilan akan dilakukan pada benang latar belakang.
<.> 3. Kod dan kaedah padat CPU:
Elakkan menggunakan Task.run dalam kod yang boleh diguna semula. Sebaliknya, gunakan Task.run untuk memanggil kaedah CPU -intensif, dan dengan jelas menjelaskan ciri -ciri CPU -intensif dalam tandatangan kaedah. Pemisahan ini membolehkan komponen yang digunakan semula secara fleksibel tanpa menjejaskan kecekapan benang latar belakang.
pengoptimuman thread ui amalan terbaik:
Selain menggunakan tugas.Pastikan operasi benang UI dalam 50 milisaat untuk mengelakkan menyekat.
Hadkan kesinambungan benang UI pada kira -kira 100 kali sesaat.
Gunakan ConfigureAwait (FALSE) untuk mengoptimumkan prestasi apabila memulihkan operasi menunggu di benang UI.
Atas ialah kandungan terperinci Task.Run vs. Async-Rawan di WPF: Bilakah saya harus menggunakan yang mana untuk prestasi UI yang optimum?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!