Thread creation

The pthreads API for creating a thread is pthread_create(3); its signature is as follows:

#include <pthread.h>int pthread_create(pthread_t *thread, const pthread_attr_t *attr,                void *(*start_routine) (void *), void *arg);

When compiling pthread applications, it's very important to specify the -pthread gcc option switch (it enables required macros for using the libpthread library(more on this to follow).

pthread_create is the API to invoke to create a new thread within the calling process. On success, the new thread will be running concurrently (in parallel) with other threads that may be alive in that process at that point in time; but what code will it be running? It will start by running the code of the start_routine function ...

Get Hands-On System Programming with Linux now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.