Содержание
- 2. Наиболее популярные библиотеки параллельного программирования* Наиболее популярные языки параллельного программирования* * - по данным опроса Suess
- 3. Программирование с использованием нитей Posix Нить (поток) очень похожа на процесс, ее еще называют легковесным процессом.
- 4. Схема работы параллельной программы с использованием нитей
- 5. Компиляция и запуск Компиляция: gcc file_name.c -lpthread -lrt (по умолчанию исполняемы файл имеет имя «a.out») Запуск:
- 6. Первая программа, часть 1 создание нити #include #include #include // заголовочный файл pthread int main(int argc,
- 7. Первая программа, часть 2 /* нить завершает свою работу, когда происходит выход из функции start_func. Если
- 8. Первая программа, часть 3 функция нити /* Функция работы нити (область жизни нити)*/ void* start_func(void* param){
- 9. Первая программа, часть 4 семафоры Механизм синхронизации нитей. Существует несколько механизмов, организующих доступ к критической секции.
- 10. Первая программа, часть 5 семафоры #include sem_t sem; // объявление семафора – глобальной переменной int main(int
- 11. Первая программа, часть 6 критическая секция void* start_func(void* param){ int val; … sem_wait(&sem); // уменьшает значение
- 12. Полезные блоки программы // Создание нескольких нитей #define NUM_THREADS 2 int main (int argc, char *argv[])
- 13. Время работы программы #include // заголовочный файл, содержащий типы и функции для работы с датой и
- 14. О функции генерации случайных чисел 1 Функция rand() не является нитезащищенной. Она имеет следующий примерный вид:
- 16. Скачать презентацию