POSIX threads é um padrão POSIX para threads, o qual define uma API padrão para criar e manipular threads. As bibliotecas que implementam a POSIX threads são chamadas Pthreads, sendo muito difundidas no universo Unix e outros sistemas operacionais semelhantes como Linux e Solaris.

Exemplo

Este é um exemplo de implementação que utiliza a POSIX threads.

#include <stdio.h> #include <stdlib.h> #include <pthread.h>

#define THREADS_MAX 4

void *function(void *param) { int id = *((int *)(param)); int i, loops = 10; for(i = 0; i < loops; i++)

printf("thread %d: loop %d\n", id, i);

pthread_exit(NULL); }

int main(void) { pthread_t threads[THREADS_MAX]; int thread_args[THREADS_MAX]; int i; printf("pre-execution\n"); for (i = 0; i < THREADS_MAX; i++)

thread_args[i] = i; pthread_create(&threads[i], NULL, function, (void *) &thread_args[i]);

printf("mid-execution\n");

for (i = 0; i < THREADS_MAX; i++)

pthread_join(threads[i], NULL);

printf("post-execution\n"); return EXIT_SUCCESS; }

Ver também

Thread Computação paralela

Ligações externas

Artigo 'POSIX Threads Explained' por Daniel Robbins

Categoria:POSIX