


Cara menggunakan tugas tak segerak dan teknologi pengkomputeran selari dalam C#
Cara menggunakan tugas tak segerak dan teknologi pengkomputeran selari dalam C#
Pengenalan:
Dalam pembangunan perisian hari ini, isu kecekapan dan prestasi sentiasa menjadi tumpuan pembangun. Untuk meningkatkan kelajuan tindak balas aplikasi dan kecekapan menyelesaikan tugas yang kompleks, C# menyediakan tugas tak segerak dan teknologi pengkomputeran selari. Artikel ini akan memperkenalkan secara terperinci cara menggunakan tugas tak segerak dan teknologi pengkomputeran selari dalam C#, dan menyediakan contoh kod khusus.
1. Tugas tak segerak
1.1 Gambaran keseluruhan
Tugas tak segerak merujuk kepada tugas yang boleh dilaksanakan di latar belakang, yang boleh memastikan antara muka aplikasi responsif dan meningkatkan prestasi program. Dalam C#, tugas tak segerak boleh dilaksanakan menggunakan kata kunci tak segerak dan menunggu.
1.2 Kaedah tak segerak
Kaedah tak segerak dalam C# merujuk kepada kaedah dengan pengubah suai kata kunci async Kaedah yang diubah suai boleh mengandungi satu atau lebih ekspresi menunggu. Dalam kaedah tak segerak, gunakan kata kunci await untuk menunggu selesainya operasi tak segerak, sambil membenarkan tugasan lain terus dilaksanakan semasa menunggu.
1.3 Langkah untuk menggunakan tugas tak segerak
Berikut ialah langkah asas untuk menggunakan tugas tak segerak:
1) Isytihar kaedah tak segerak dan ubah suai dengan kata kunci tak segerak.
2) Gunakan kata kunci tunggu dalam kaedah tak segerak untuk menunggu selesainya operasi tak segerak.
3) Apabila memanggil kaedah tak segerak, gunakan kata kunci await untuk mendapatkan hasil tak segerak.
1.4 Contoh
Berikut ialah contoh mudah menggunakan tugas tak segerak untuk menunjukkan proses memuat turun fail secara tidak segerak.
using System; using System.Net; using System.Threading.Tasks; class Program { static void Main() { DownloadFileAsync("https://www.example.com/file.txt").Wait(); Console.WriteLine("文件下载完成!"); } static async Task DownloadFileAsync(string url) { using (var client = new WebClient()) { await client.DownloadFileTaskAsync(new Uri(url), "file.txt"); } } }
Dalam contoh di atas, dengan menggunakan kata kunci tak segerak dan menunggu, proses memuat turun fail dilaksanakan secara tak segerak, dan semasa proses menunggu, antara muka aplikasi kekal responsif.
2. Teknologi Pengkomputeran Selari
2.1 Gambaran Keseluruhan
Teknologi pengkomputeran selari merujuk kepada teknologi yang menguraikan tugas besar kepada beberapa tugas kecil untuk pelaksanaan selari. Dalam C#, anda boleh menggunakan kelas Selari dan PLINQ untuk melaksanakan pengkomputeran selari.
2.2 Kelas selari
Kelas Selari ialah kelas statik yang menyediakan satu siri kaedah untuk melaksanakan tugasan secara selari. Melalui kelas Selari, pelaksanaan selari pelbagai tugas boleh dicapai dengan mudah.
2.3 PLINQ
PLINQ (LINQ Selari) merujuk kepada pertanyaan LINQ yang boleh dilaksanakan secara selari. Melalui PLINQ, pertanyaan selari dan pemprosesan koleksi dapat direalisasikan dengan cepat.
2.4 Langkah untuk menggunakan pengkomputeran selari
Berikut adalah langkah asas untuk menggunakan pengkomputeran selari:
1) Bergantung pada jenis tugasan, pilih untuk menggunakan kelas Selari atau PLINQ untuk melaksanakan pengkomputeran selari.
2) Pecahkan tugasan kepada tugasan yang lebih kecil.
3) Gunakan kaedah kelas Selari atau PLINQ untuk melaksanakan tugas pada berbilang pemproses serentak.
4) Cantumkan hasil pengiraan selari.
2.5 Contoh
Berikut ialah contoh pengiraan nombor perdana menggunakan teknik pengiraan selari.
using System; using System.Linq; class Program { static void Main() { var primes = Enumerable.Range(2, 1000000) .AsParallel() .Where(n => Enumerable.Range(2, (int)Math.Sqrt(n) - 1) .All(i => n % i != 0)); Console.WriteLine("1到1000000之间的素数个数:{0}", primes.Count()); } }
Dalam contoh di atas, dengan menggunakan kaedah AsParallel untuk menukar pertanyaan kepada pertanyaan selari, proses pengiraan nombor perdana boleh dilaksanakan secara serentak pada berbilang pemproses, meningkatkan kecekapan pengiraan.
Kesimpulan:
Artikel ini memperincikan penggunaan tugas tak segerak dan teknologi pengkomputeran selari dalam C# dan menyediakan contoh kod khusus. Melalui aplikasi tugas tak segerak dan teknologi pengkomputeran selari, kelajuan tindak balas dan kecekapan pengkomputeran aplikasi boleh dipertingkatkan, dan prestasi program boleh dipertingkatkan.
Rujukan:
Microsoft Docs (2021) Pengaturcaraan tak segerak dan menunggu daripada https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/concepts/async/
Microsoft Docs. . (2021) Cara: Menulis gelung foreach dalam Visual C#. -gelung-foreach-dengan-break
Atas ialah kandungan terperinci Cara menggunakan tugas tak segerak dan teknologi pengkomputeran selari dalam C#. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Panduan untuk Active Directory dengan C#. Di sini kita membincangkan pengenalan dan cara Active Directory berfungsi dalam C# bersama-sama dengan sintaks dan contoh.

Panduan untuk Pensirian C#. Di sini kita membincangkan pengenalan, langkah-langkah objek siri C#, kerja, dan contoh masing-masing.

Panduan untuk Penjana Nombor Rawak dalam C#. Di sini kita membincangkan cara Penjana Nombor Rawak berfungsi, konsep nombor pseudo-rawak dan selamat.

Panduan untuk Paparan Grid Data C#. Di sini kita membincangkan contoh cara paparan grid data boleh dimuatkan dan dieksport daripada pangkalan data SQL atau fail excel.

Panduan kepada Corak dalam C#. Di sini kita membincangkan pengenalan dan 3 jenis Corak teratas dalam C# bersama-sama dengan contoh dan pelaksanaan kodnya.

Panduan untuk Faktorial dalam C#. Di sini kita membincangkan pengenalan kepada faktorial dalam c# bersama-sama dengan contoh dan pelaksanaan kod yang berbeza.

Panduan Nombor Perdana dalam C#. Di sini kita membincangkan pengenalan dan contoh nombor perdana dalam c# bersama dengan pelaksanaan kod.

Perbezaan antara multithreading dan asynchronous adalah bahawa multithreading melaksanakan pelbagai benang pada masa yang sama, sementara secara tidak sengaja melakukan operasi tanpa menyekat benang semasa. Multithreading digunakan untuk tugas-tugas yang berintensifkan, sementara asynchronously digunakan untuk interaksi pengguna. Kelebihan multi-threading adalah untuk meningkatkan prestasi pengkomputeran, sementara kelebihan asynchronous adalah untuk tidak menghalang benang UI. Memilih multithreading atau asynchronous bergantung kepada sifat tugas: tugas-tugas intensif pengiraan menggunakan multithreading, tugas yang berinteraksi dengan sumber luaran dan perlu menyimpan respons UI menggunakan asynchronous.
