Tags
Language
Tags
December 2024
Su Mo Tu We Th Fr Sa
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31 1 2 3 4

Python Concurrency Simplified

Posted By: ELK1nG
Python Concurrency Simplified

Python Concurrency Simplified
Last updated 12/2018
MP4 | Video: h264, 1280x720 | Audio: AAC, 44.1 KHz
Language: English | Size: 1.78 GB | Duration: 5h 56m

Practically understand concurrency in Python to write efficient programs

What you'll learn

This course is for Python developers who want to learn concurrency techniques to build high-performance applications with Python.

Requirements

Prior knowledge of Python language is assumed.

Description

Python is a very high level, general purpose language that is utilized heavily in fields such as data science and research, as well as being one of the top choices for general purpose programming for programmers around the world. It features a wide number of powerful, high and low-level libraries and frameworks that complement its delightful syntax and enable Python programmers to create.This course introduces some of the most popular libraries and frameworks and goes in-depth into how you can leverage these libraries for your own high-concurrent, highly-performant Python programs. You will learn the fundamental concepts of concurrency needed to be able to write your own concurrent and parallel software systems in Python. You will also learn the concepts such as debugging and exception handling as well as the libraries and frameworks that allow you to create event-driven and reactive systems.Contents and OverviewThis training program includes 2 complete courses, carefully chosen to give you the most comprehensive training possible.The first course, Learning Concurrency in Python, introduces some of the most popular libraries and frameworks and goes in-depth into how you can leverage these libraries for your own high-concurrent, highly-performant Python programs. You will learn the fundamental concepts of concurrency needed to be able to write your own concurrent and parallel software systems in Python.In the second course, Concurrent Programming in Python, you will skill-up with techniques related to various aspects of concurrent programming in Python, including common thread programming techniques and approaches to parallel processing.Filled with examples, this course will show you all you need to know to start using concurrency in Python. You will learn about the principal approaches to concurrency that Python has to offer, including libraries and tools needed to exploit the performance of your processor. Learn the basic theory and history of parallelism and choose the best approach when it comes to parallel processing.By the end of this course, you will have learned the techniques to write incredibly efficient concurrent systems that follow best practices.Meet Your Expert(s):We have the best work of the following esteemed author(s) to ensure that your learning journey is smooth:●        Elliot Forbes has worked as a full-time software engineer at a leading financial firm for the last two years. He graduated from the University of Strathclyde in Scotland in the spring of 2015 and worked as a freelancer developing web solutions while studying there. He has worked on numerous different technologies such as Golang, Node.js, and plain old Java, and he has spent years working on concurrent enterprise systems.Elliot has even worked at Barclays Investment Bank for a summer internship in London and has maintained a couple of software development websites for the last three years.BignumWorks Software LLP is an India-based software consultancy that provides consultancy services in the area of software development and technical training. Our domain expertise includes web, mobile, cloud app development, data science projects, in-house software training services, and up-skilling services.

Overview

Section 1: Learning Concurrency in Python

Lecture 1 The Course Overview

Lecture 2 Threads and Multithreading

Lecture 3 Processes and Event-Driven Programming

Lecture 4 Concurrent Image Download

Lecture 5 Improving Number Crunching with Multiprocessing

Lecture 6 Concurrency and I/O Bottlenecks

Lecture 7 Understanding Parallelism

Lecture 8 Computer Memory Architecture Styles

Lecture 9 Threads in Python

Lecture 10 Starting a Thread

Lecture 11 Handling Threads in Python

Lecture 12 How Does the Operating System Handle Threads?

Lecture 13 Deadlocks and Race Condition

Lecture 14 Shared Resources and Data Races

Lecture 15 Conditions and Semaphores

Lecture 16 Events and Barriers

Lecture 17 Sets and Decorator

Lecture 18 Queues

Lecture 19 Queue and Deque Objects

Lecture 20 Appending, Popping, and Inserting Elements

Lecture 21 Defining Your Own Thread-Safe Communication Structures

Lecture 22 Testing Strategies

Lecture 23 Debugging

Lecture 24 Benchmarking

Lecture 25 Profiling

Lecture 26 Concurrent Futures

Lecture 27 Future Objects

Lecture 28 Setting Callbacks and Exception Classes

Lecture 29 ProcessPoolExecutor

Lecture 30 Improving Our Crawler

Lecture 31 Working Around the GIL and Daemon Processes

Lecture 32 Identifying and Terminating Processes

Lecture 33 Multiprocessing Pools

Lecture 34 Communication Between Processes

Lecture 35 Multiprocessing Manager

Lecture 36 Communicating Sequential Processes

Lecture 37 Event-Driven Programming

Lecture 38 Getting Started with Asyncio

Lecture 39 Debugging Asyncio Programs

Lecture 40 Twisted

Lecture 41 Gevent

Section 2: Concurrent Programming in Python

Lecture 42 The Course Overview

Lecture 43 Advanced OSes and Programming Environments

Lecture 44 Concurrency Versus Parallelism with Examples

Lecture 45 Operating System’s Building Blocks of Parallel Execution

Lecture 46 Libraries in Python Used to Achieve Concurrency and Parallelism

Lecture 47 Python’s Global Interpreter Lock (GIL)

Lecture 48 Overview of Threading Module

Lecture 49 Creating Threads

Lecture 50 Managing Threads

Lecture 51 Synchronization in Python

Lecture 52 Using Synchronization Primitives

Lecture 53 Producer–Consumer Pattern

Lecture 54 Using Python Queue Module

Lecture 55 Multithreading in GUI Programming

Lecture 56 Limitations Imposed by GIL

Lecture 57 Multiprocessing

Lecture 58 Similarities Between Thread and Process Management

Lecture 59 Difference Between Thread and Process Management

Lecture 60 Libraries for Practice

Lecture 61 Process Synchronization

Lecture 62 Inter-Process Communication

Lecture 63 Best Practices and Anti-Patterns

Lecture 64 Pool of Workers for Maximizing Usage of the Hardware

Lecture 65 When and How to Use a Pool of Workers

Lecture 66 Best Practices and Anti-Patterns

Increase your awareness of concurrency in Python,Distinguish between parallel programming and concurrent programming,Explore Python's threading module,Familiarize yourself with Python's Global Interpreter Lock (GIL),Learn the similarities between thread and process management,Practice with open source libraries,Learn process synchronization and inter-process communication,Work with best practices and caveats,Know how to handle the hardest part in a concurrent system: shared resources,Build concurrent systems with Communicating Sequential Processes (CSPs),Maintain all concurrent systems and master them