int main(int argc, char** argv) {
int n1 = 1, n2 = 2;
// Thread-Handle
pthread_t t1, t2;
// Threads erstellen (t, attr, code, args)
// args ist vom Typ void*, damit die Argumentübergabe möglichst
// generell ist. Der Thread muss die Adresse selbst interpretieren.
pthread_create(&t1, NULL, runner, &n1);
pthread_create(&t2, NULL, runner, &n2);
// Warten bis die Threads fertig sind (t, res)
pthread_join(t1, NULL);
pthread_join(t2, NULL);
return 0u;
}
void *runner(void *args) {
// Aufgelöstes Argument. Der Void-Pointer wurde zum int-pointer gecastet
// und anschließend aufgelöst.
int nr = *((int *)args);
return args;
}Verwandte Themen