6.3 Программирование с помощью pthread-ов |
Предыдущая Содержание Следующая |
Для обсуждения различных операций с pthread-ами мы взяли очень простой MP3-плеер, код которого находится в файле player.c. Плеер имеет два основных компонента.
▪Инициализация: она включает в себя инициализацию звуковой подсистемы в отдельном потоке. Используется для демонстрации создания потока и выхода из процедуры. ▪Декодирование: это ядро приложения. Участвуют два рабочих потока. Основной поток читает данные из MP3-файла и добавляет их в очередь. Поток декодера извлекает данные, декодирует их и проигрывает. Очередь представляет собой общую структуру данных между основным потоком и потоком декодера. Рисунок 6.6 показывает различные объекты, которые участвуют в фазе декодирования. Идея заключается в подробной демонстрации различных примитивов синхронизации потоков.
Рисунок 6.6 Простой звуковой плеер.
Пожалуйста, обратите внимание, что этот раздел не является полным справочником по работе с потоками pthread. Нашей целью является дать вам достаточное количество деталей для быстрого начала работы с pthread-ми. Также в нашем примере плеера намеренно опущены специфические подробности, касающиеся декодирования и воспроизведения. Это сделано, чтобы уделить больше внимания операциям с pthread-ми в плеере.
|
Предыдущая Содержание Следующая |