21 lines
955 B
Markdown
21 lines
955 B
Markdown
|
# POSIX-Threads
|
||
|
|
||
|
📆 **Fällig: ----** 📆 [Musterlösung](solution/)
|
||
|
|
||
|
Implementieren Sie eine Funktion mit dem Namen `task`, die einen Parameter vom Typ `void*` erhält. Diese Funktion soll eine einfache Aufgabe ausführen, z.B. eine Schleife von 1 bis 10 ausgeben. Jeder Thread soll diese Aufgabe unabhängig voneinander ausführen. Verwenden Sie `usleep` aus `<unistd.h>`, um die Threads nach jeder Ausgabe 10 Mikrosekunden schlafen zu lassen.
|
||
|
|
||
|
In der `main`-Funktion sollen drei Threads erstellt werden. Jeder Thread soll die Funktion `task` ausführen. Verwenden Sie die Funktionen `pthread_create`, `pthread_join` und `pthread_exit` zur Verwaltung der Threads.
|
||
|
|
||
|
Beispiel:
|
||
|
|
||
|
```console
|
||
|
1 1 2 1 3 2 2 4 3 3 5 4 4 6 5 5 7 6 8 6 7 9 7 8 10 8 9 9
|
||
|
10 10
|
||
|
```
|
||
|
|
||
|
|
||
|
## Quellen
|
||
|
|
||
|
* [Skript](https://smits-net.de/files/pr3_c/html/) zur Vorlesung
|
||
|
* [C-Tutorial](https://www.learn-c.org/)
|
||
|
* [C von A bis Z](https://openbook.rheinwerk-verlag.de/c_von_a_bis_z/)
|