1. Что такое поток? Какова цель использования потоков в программах?
2. Какова разница между потоками и процессами?
3. Когда потоки могут выполняться действительно параллельно?
4. Как можно создать в программе новый поток?
5. Как передать в поток параметры и получить из потока возвращаемое значение?
6. Может ли функция, выполняемая потоком, быть описана вне программы?
7. Могут ли два потока использовать одну и ту же функцию?
8. Что произойдет с потоком, если поток, создавший его, завершится?
9. Возможно ли выполнить многопоточную программу на многопроцессорной системе и на нескольких компьютерах, объединенных в сеть?
10. Что такое критическая секция в многопоточной программе? Найдите критическую секцию в программе simple_mutex.c.