Администрирование и программирование [Павел Хошев] [Stepik] Многопоточный Python (2024)

Columbo

Команда форума
Модератор
[Павел Хошев] [Stepik] Многопоточный Python (2024)
2024-05-16_19-40-45.png
Многопоточный Python [Stepik] [Павел Хошев]

С этим курсом вы освоите многопоточное программирование и откроете для себя мир высокопроизводительных приложений!
Курс предлагает хорошо структурированную теорию, практические задания, поддержку экспертов и доступ к сообществу.
Погрузитесь в учебу, примените полученные знания на практике и станьте востребованным специалистом, подтвердив свои навыки сертификатом.
Начните трансформацию своего кода и карьеры запишитесь на курс уже сегодня!

Цели курса:
Курс направлен на изучение и глубокое понимание многопоточности. Целью является обучение разработчиков созданию высокопроизводительных и эффективных многопоточных приложений, позволяющих максимально использовать ресурсы современных систем.

Почему стоит выбрать именно этот курс:
Этот курс выделяется на фоне других благодаря своей акцентированности на практическом применении знаний, предоставлению реальных кейсов и задач, которые разработчики могут столкнуться в своей профессиональной деятельности. Он предлагает глубокое погружение в тему с пошаговыми инструкциями и лучшими практиками, подкрепленными примерами кода и практическими задачами.

Что приобретут учащиеся после его успешного освоения:
После успешного завершения курса учащиеся приобретут навыки:
  • Разработки многопоточных приложений на Python;
  • Эффективного использования потоков и пулов потоков;
  • Оптимизации производительности программ;
  • Понимания и устранения проблем, связанных с многопоточностью.
  • И многое другое...
Особенности курса:
  • Практическая ориентированность: Курс сфокусирован на практических задачах, что помогает лучше усвоить материал.
  • Гибкость и доступность: Предлагается удобный формат обучения, подходящий как для новичков, так и для опытных разработчиков.
  • Поддержка сообщества и наставников: Учащиеся имеют доступ к помощи и поддержке со стороны преподавателей и сообщества.
  • Сертификация: Выдача сертификата по окончании курса, подтверждающего приобретенные навыки.
Что нужно будет делать:
Учащимся предстоит изучать теоретические материалы, выполнять практические задания, тестировать и оптимизировать многопоточные приложения и радоваться полученным навыкам.

Для кого этот курс:
Начинающие программисты, которые хотят углубить свои знания в Python и изучить многопоточное программирование для повышения своей квалификации и рыночной ценности. — Опытные разработчики, стремящиеся расширить свои компетенции и улучшить производительность существующих приложений через эффективное использование многопоточности. — Специалисты по анализу данных и искусственного интеллекта, для которых конкурентная обработка данных является ключом к ускорению вычислений и повышению эффективности алгоритмов. — Студенты технических специальностей, желающие углубить свои знания в современных методах программирования и подготовиться к будущей карьере в IT. — Веб-разработчики, ищущие способы улучшить отзывчивость и производительность своих приложений на стороне сервера. — Профессионалы в области IT, нуждающиеся в улучшении навыков работы с многопоточностью для решения специфических задач, например, в разработке игр или комплексных систем реального времени.

Программа курса:
Введение в многопоточность

1. Введение
2. Основные понятия
3. Что такое потоки
4. Что такое главный поток
5. Ожидание результата от потока
6. Ожидание выполнения потока
7. Имена потоков
8. Атрибуты потока
9. Хранение локальных данных потока
10. Атомарные операции
11. Как перезапустить поток
12. Блокирующие вызовы в потоках
13. Поток-таймер
14. Вспомогательные функции для работы с потоками

Работа с пулами потоков и Executors
1. Что такое пулы потоков
2. Создание пула потоков
3. Отправка задач в пул потоков с помощью submit() и map()
4. Получаем результаты из пула потоков
5. Жизненный цикл ThreadPoolExecutor
6. Что такое Executors
7. Ожидание завершения задач
8. Инициализации рабочих потоков
9. Завершение работы пула потоков
10. Количество потоков
11. Тестирование и оптимальное количество потоков
12. ThreadPoolExecutor vs AsyncIO

Подробнее о Futures
1. Что такое Futures
2. Объект Future
3. Методы Future
4. Жизненный цикл Future
5. Проверяем статус Future
6. Добавляем обратный вызов к Future
7. Получение исключений из Future
8. Всё об отмене Future

Управление потоками и синхронизация
1. Блокировка взаимного исключения. Объект Lock
2. Реентерабельная блокировка
3. Синхронизация по событиям (Event)
4. Синхронизация с условием (Condition)
5. Семафор в потоках
6. Как остановить все задачи
7. Остановить все задачи, если одна завершилась неудачей
8. Барьер в потоках (Barrier)

Advanced Locking - Продвинутое блокирование
1. Конкуренция за блокировку
2. Чередование блокировок
3. Разделение блокировок
4. Повторная попытка блокировки с откатом
5. Накладные расходы поточной блокировки

Практические применение и продвинутые техники
1. Последовательная и параллельная загрузка
2. Одновременная загрузка файлов с submit() и as_completed()
3. Обработка исключений во время выполнения задачи

Безопасность потоков
1. Потокобезопасный счетчик
2. Потокобезопасная печать
3. Потокобезопасное логирование
4. Потокобезопасный словарь
5. Потокобезопасный список
6. Потокобезопасная запись в файл
7. Непостоянные переменные

Создание и работа с пулом потоков в модуле multiprocessing
1. ThreadPoolExecutor vs ProcessPoolExecutor
2. Синхронное выполнение одиночной задачи
3. Асинхронное выполнение одиночной задачи
4. Синхронная обработка коллекций
5. Асинхронная обработка коллекций
6. Итеративная синхронная обработка задач
7. Итеративная синхронная обработка задач без сохранения порядка
8. Синхронная обработка задач с множеством аргументов
9. Асинхронная обработка задач с множеством аргументов
10. Какой метод выбрать?
11. Сравнение методов
12. Лучшие практики использования пула процессов
13. Распространенные ошибки

Продажник:
Скрытое содержимое. Вам нужно войти или зарегистрироваться.
Скачать:
Скрытое содержимое. Вам нужно войти или зарегистрироваться.
 
Сверху