Library C ++ - <thread>

pengantar

Thread adalah urutan instruksi yang dapat dijalankan secara bersamaan dengan urutan lainnya di lingkungan multithreading, sambil berbagi ruang alamat yang sama.

Jenis anggota

Sr.No. Jenis & deskripsi anggota
1 Indo

Ini adalah id utas.

2 Jenis pegangan asli

Ini adalah tipe pegangan asli.

Fungsi anggota

Sr.No. Fungsi & deskripsi anggota
1 (konstruktor)

Ini digunakan untuk membuat utas.

2 (penghancur)

Ini digunakan untuk merusak utas.

3 operator =

Ini adalah utas tugas-pindah.

4 get_id

Ini digunakan untuk mendapatkan id thread.

5 dapat digabungkan

Ini digunakan untuk memeriksa apakah dapat digabungkan.

6 Ikuti

Ini digunakan untuk menggabungkan utas.

7 melepaskan

Ini digunakan untuk melepaskan benang.

8 menukar

Ini digunakan untuk menukar utas.

9 native_handle

Ini digunakan untuk mendapatkan pegangan asli.

10 hardware_concurrency [statis]

Ini digunakan untuk mendeteksi konkurensi perangkat keras.

Kelebihan non-anggota

Sr.No. Kelebihan & deskripsi non-anggota
1 tukar (utas)

Ini digunakan untuk menukar utas.

Contoh

Dalam contoh di bawah ini untuk std :: thread.

#include <iostream>
#include <thread>

void foo() {
   std::cout << " foo is executing concurrently...\n";
}

void bar(int x) {
   std::cout << " bar is executing concurrently...\n";
}

int main() {
   std::thread first (foo);
   std::thread second (bar,0);

   std::cout << "main, foo and bar now execute concurrently...\n";

   first.join();
   second.join();

   std::cout << "foo and bar completed.\n";

   return 0;
}

Outputnya harus seperti ini -

main, foo and bar now execute concurrently...
 bar is executing concurrently...
 foo is executing concurrently...
foo and bar completed.