Имеется простейшие код создания потока:
#include <thread>
void fun() {
std::this_thread::sleep_for(std::chrono::milliseconds(1000));
}
int main() {
std::thread t(fun);
std::cout << "thread created\n";
t.join();
return 0;
}
При этом при отладке в gdb я вижу, что при создании потока вместо одного, gdb сообщает о двух. Второй на протяжении всего времени не подает признаков жизни, и исчезает при выходе из программы вместе с основным потоком. При этом поток, в котором выполняется fun исчезает после вызова join (и завершения всех действий в функции fun). Если я создаю еще один или более потоков - лишних потоков больше не появляется. В чем дело? Откуда появился этот поток и зачем он нужен?
возник вопрос: Возможно ли сжать видеофайлы или видеопоток? Пытался использовать lz4 для сжатия данных, сначала использовал этот метод сжатия...
Пишу алгоритм бинарной сортировки (в целях обучения)Компилятор - MinGW-w64 с флагом оптимизации -o0