REKLAMA

Programista 8/2015 (39) – Zrozumieć Programowanie

Synchronizacja, Muteksy i sekcje krytyczne, Typy stałoprzecinkowe, Przekierowania

(...)Problem synchronizacji dostępu do zasobów występuje już w przypadku aplikacji jednowątkowych działających na systemach wieloprocesowych, czyli takich, w których wiele programów jest uruchomionych jednocześnie. Typowym przykładem jest utworzenie pliku, ale tylko w przypadku, gdy ten nie istnieje – rozważmy zaprezentowany poniżej fragment kodu w języku Python:

fname = "/writable/file/path/example_file"
if not os.path.isfile(fname):
f = open(fname, "w")      (...)

Niektóre zagadnienia poruszane w tym artykule:

  • Problemy manualnej synchronizacji [VERBOSE]
  • RAII i implementacja lock_guard [VERBOSE]
  • Rezygnacja z próby zajęcia blokady [VERBOSE]
  • Obiekty synchronizowane [VERBOSE]
  • Jak rozwiązywane są przekierowania [VERBOSE]
  • Dwa przekierowania do jednego pliku [BEYOND]

Artykuł pochodzi z miesięcznika "Programista" nr 08/2015 (39). Spis treści całego wydania: http://programistamag.pl/programista-8-2015-39/ . Artykuł jest też zamkniętym - wyczerpującym, przedpremierowym fragmentem książki pt. „Zrozumieć programowanie”, która w połowie października ukaże się nakładem Wydawnictwa  Naukowego PWN. 

Autorem artykułu i książki jest Gynvael Coldwind.

zrozumiec1