Home >>> Courses >>> Special Topics >>> Threads

What customers say ...


pleasant atmosphere, great full-service setup right group size

Paul Zielke, Bosch Rexroth AG about the course "Python for Programmers" more...


Very crisp and precise knowledge of the subject /content. Very good and highly recommended for all Python beginners.

Dicken George System Development Engineer, Soitec Solar GmbH about the course "Python for Programmers and Python for Scientists and Engineers" more...


The course "Python for Scientists and Engineers" is a very useful introduction to Python programming for scientific applications ...

Dr. Mihai Duta, Oxford Supercomputing Centre, UK more...


Highly recommended. Many aha-experiences and took home many positive inspiratons.

Helmut Dittrich, CEO DiFis-Engineering UG, arrow-fix.com, about the German introduction to Django "Django für Fortgeschrittene" more...


[The trainer] knows well what scientists need, so his hints are very practical and valuable. The hands-on course [..] covers a wide range of examples and will be very helpful in my daily work. ..

Dorota Jarecka, University of Warsaw, Poland about the course "Python for Scientists and Engineers" more...


Module - Threads and Processes in Python

Dates for Open Courses

Course only available as in-house training. Please ask us at info@python-academy.de

Motivation

Threads allow the simultaneous execution of several program paths. This opens new possibilities for program development. On the other hand, programs become more complex. Python uses the native thread implementation of the operating system and offers a unified API therefore offers platform-impendent threaded programming.

Course content

Thread Basics

The possibilities for threads in Python are shown. An examples is used to demonstrate how the module threading works.

GIL

Python has a so called General Interpreter Lock (GIL) that prevents several threads to run in real parallel on multi-CPU hardware. The implications of the GIL on programming are covered.

Thread Synchronization

Synchronization of threads is a important part of thread programming. Random manipulations of data has to be avoided when two threads access the same data at the same time. To achieve this data need to be locked by one thread providing exclusive access for this period of time.

Examples are used to explain the principles of locking. Special focus is put on so called dead-lock situations where threads block each other from executing and bring the program to a halt.

Processes

Python provides several ways to launch and access external processes. These ways are introduced with examples.

Combination of Threads and Processes

The combination of threads and processes allows to run programs in parallel using the advantages of multi-processor machines possibily gaining speedups. An example is used to demonstrate the effect of such combinations.

Module Duration

1 day

Exercises

The participants can follow all steps directly on their computers. There are exercises at the end of each unit providing ample opportunity to apply the freshly learned knowledge.

Course Material

Every participant receives comprehensive printed materials that cover the whole course content as wells as a CD with all source codes and used software.



The Python Academy is sponsor of PyCon US 2017.

[PyCon US 2017]

The Python Academy is sponsor of PythonCamp Köln 2017.

[PythonCamp 2017]“ border=

The Python Academy is sponsor of Django Girls Leipzig 2016

[Django Girls Leipzig 2016]

The Python Academy is sponsor of PyCon DE 2016.

[PyCon DE 2016]

The Python Academy is sponsor of PyCon Ireland 2016.

[PyCon IE 2016]

The Python Academy is sponsor of EuroSciPy 2016.

[EuroSciPy 2016]

The Python Academy is sponsor of PyCon US 2016.

[PyCon US 2016]

The Python Academy is sponsor of PyData Berlin 2016.

[PyData Berlin 2016]

The Python Academy is sponsor of PyCon Sweden 2016.

[PyCon SE 2016]

The Python Academy is sponsor of Python Unconference 2015.

[PyUnconf 2015]

The Python Academy is sponsor of EuroSciPy 2015.

[EuroSciPy 2015]

The Python Academy is sponsor of EuroPython 2015.

[EuroPython 2015]

The Python Academy is sponsor of PyData Berlin 2015.

[PyData Berlin 2015]

The Python Academy is sponsor of PyCon Montréal 2015.

[PyCon Montréal 2015]

The Python Academy is sponsor of Python BarCamp Köln 2015.

[Python BarCamp 2015]“ border=

The Python Academy is sponsor of Chemnitzer Linux-Tage 2015.

Chemnitzer Linux-Tage 2015 - 21. und 22. März 2015

The Python Academy is sponsor of Django Girls Wroclaw 2015.

[Django Girls Wroclaw 2015]

The Python Academy is sponsor of PyCon Ireland 2014.

[PyCon Ireland 2014]

The Python Academy is sponsor of EuroSciPy 2014.

[EuroSciPy 2014]

The Python Academy is sponsor of PyData London 2014.

[PyData London 2014]

The Python Academy is sponsor of EuroPython 2014.

[EuroPython 2014]

The Python Academy is sponsor of PyCon 2014 Montréal.

[PyCon 2014 Montréal]

The Python Academy is sponsor of Python BarCamp Köln 2014.

[Python BarCamp 2014]

The Python Academy is sponsor of PyConDE 2013.

[PyCon DE 2013]

The Python Academy is sponsor of EuroPython 2013.

[EuroPython 2013]

The Python Academy is sponsor of PyCon US 2013.

[PyCon US 2013]

The Python Academy is sponsor of EuroSciPy 2013.

[EuroSciPy 2013]

The Python Academy is sponsor of PyConPL 2012.

[PyCon PL 2012]

News


The next open cousers
details ...


Python Academy sponsors EuroPython conference 2013
details ...


Python Academy sponsors EuroSciPy conference 2013
details ...


Python Academy sponsors Python BarCamp in Cologne
details ...


Next Meeting of Leipzig Python User Group, November 12, 2013
details ...


Introduction to Django, November 11 - 13, 2013
details ...


Professional Testing with Python, November 25 - 27, 2013
details ...


Advanced Django, January 13 - 15, 2014
details ...


Python Academy sponsors PyCon US conference 2013
details ...


Python Academy founder receives PSF Community Service Award
details ...