Библиотека C ++ - <поток>

Введение

Поток - это последовательность инструкций, которая может выполняться одновременно с другими такими последовательностями в многопоточных средах, разделяя при этом один и тот же адресный интервал.

Типы участников

Sr. No. Тип и описание участника
1 мне бы

Это идентификатор потока.

2 Родной тип ручки

Это родной тип ручки.

Функции-члены

Sr. No. Функция и описание члена
1 (конструктор)

Он используется для создания резьбы.

2 (деструктор)

Он используется для деструктора потока.

3 оператор =

Это поток-назначение.

4 get_id

Он используется для получения идентификатора потока.

5 присоединяемый

Он используется для проверки возможности присоединения.

6 присоединиться

Он используется для присоединения к потоку.

7 отделить

Используется для отсоединения нити.

8 замена

Он используется для обмена потоками.

9 native_handle

Используется для получения нативной ручки.

10 hardware_concurrency [статический]

Он используется для обнаружения аппаратного параллелизма.

Перегрузки, не являющиеся членами

Sr. No. Перегрузка и описание, не являющиеся членами
1 своп (поток)

Он используется для обмена потоками.

пример

В приведенном ниже примере для 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;
}

Результат должен быть таким -

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