Sobes.tech
Junior — Middle

Quais métodos para criar threads existem nas bibliotecas padrão de programação?

sobes.tech IA

Resposta da IA

Nas bibliotecas padrão de C e C++ existem várias formas de criar threads:

  • C (POSIX Threads, pthreads): Em sistemas POSIX (Linux, macOS), utiliza-se a biblioteca pthread.h para trabalhar com threads.
#include <pthread.h>
#include <stdio.h>

void* thread_func(void* arg) {
    printf("Olá do thread!\n");
    return NULL;
}

int main() {
    pthread_t thread;
    pthread_create(&thread, NULL, thread_func, NULL);
    pthread_join(thread, NULL);
    return 0;
}
  • C++11 e versões posteriores (std::thread): Com o padrão C++11, surgiu uma biblioteca para threads que simplifica a criação e gestão de threads.
#include <thread>
#include <iostream>

void thread_func() {
    std::cout << "Olá do thread!" << std::endl;
}

int main() {
    std::thread t(thread_func);
    t.join();
    return 0;
}

Portanto, em C é preferível usar pthreads, e em C++ — std::thread.