Pemrograman bersamaan dan asinkron

Pemrograman utas dan asinkron memungkinkan aplikasi Anda bekerja secara asinkron dalam utas paralel tanpa memblokir UI.

Aplikasi Anda dapat menggunakan kumpulan utas untuk menyelesaikan pekerjaan secara asinkron dalam utas paralel. Kumpulan utas mengelola sekumpulan utas dan menggunakan antrean untuk menetapkan item kerja ke utas saat tersedia. Kumpulan utas mirip dengan pola pemrograman asinkron yang tersedia di Windows Runtime karena dapat digunakan untuk menyelesaikan pekerjaan yang diperluas tanpa memblokir UI, tetapi kumpulan utas menawarkan lebih banyak kontrol daripada pola pemrograman asinkron dan Anda dapat menggunakannya untuk menyelesaikan beberapa item kerja secara paralel. Anda dapat menggunakan kumpulan utas untuk:

  • Kirim item kerja, kontrol prioritasnya, dan batalkan item kerja.
  • Jadwalkan item kerja menggunakan timer dan timer berkala.
  • Sisihkan sumber daya untuk item kerja penting.
  • Jalankan item kerja sebagai respons atas peristiwa bernama dan semafor.

Kumpulan utas lebih efisien dalam mengelola utas karena mengurangi overhead membuat dan menghancurkan utas. Ini memiliki akses untuk mengoptimalkan utas di beberapa inti CPU, dan dapat menyeimbangkan sumber daya utas antara aplikasi dan ketika tugas latar belakang berjalan. Menggunakan pool utas bawaan lebih praktis karena Anda dapat berfokus pada penulisan kode yang menyelesaikan tugas, alih-alih pada seluk-beluk pengelolaan utas.

Topic Description
Praktik terbaik untuk menggunakan pool thread Praktik terbaik dalam menggunakan thread pool.
Memanggil API asinkron di C# atau Visual Basic Cara menggunakan API asinkron di C# atau Visual Basic di aplikasi Windows Anda.
Membuat item kerja berkala Cara membuat item kerja yang berulang secara berkala.
Kirim item kerja ke thread pool Cara menjalankan tugas di utas terpisah dengan menyerahkan item tugas ke kumpulan utas.
Menggunakan timer untuk mengirimkan item kerja Cara membuat item kerja yang berjalan setelah timer berlalu.