Skocz do zawartości

Kurs Qt – #7 – Wstęp do przetwarzania współbieżnego


Pomocna odpowiedź

Kurs Qt – #7 – Wstęp do przetwarzania współbieżnego

W tej części kursu zajmiemy się wprowadzeniem teoretycznym do bardziej skomplikowanego, ale niezwykle przydatnego zagadnienia, jakim jest przetwarzanie współbieżne.  Przy okazji omówimy takie zagadnienia jak: wątki, procesy, wielozadaniowość i wielowątkowość.

UWAGA, to tylko wstęp! Dalsza część artykułu dostępna jest na blogu.

Przeczytaj całość »

Poniżej znajdują się komentarze powiązane z tym wpisem.

Link to post
Share on other sites

Aż się zalogowałem...

Naprawdę? Te wątki i procesy to takie proste?

No tak. Jak autor podaje jako przykład GUI to rzeczywiscie proste jest. W zasadzie w te wszystkie komponenty są od siebie niezależne. jeden button nie wpływa na drugi button, głośność jest niezależna od przewijania, a jak system raz coś błędnie odczyta, to zaraz będzie miał szansę odczytać jeszcze raz, albo kontroler interfejsu (użytkownik) kliknie raz jeszcze, bo "coś nie weszło".

A gdzie te wszystkie mutexy, semafory, kolejki z synchronizowanym dostępem, zmienne volatile, hazardy, obiekty synchrozniowane?

Przy współbieżności/wielowątkowości wszystkie testy jednostkowe są bezradne (unit testy, nawet najlepiej napisane mówią, że jest ok, a program jak działał bez zastrzeżeń, tak w kilku wątkach czasem działa ... dziwnie). RTOS - darmowa wielowątkowość bare metal działa świetnie, ale żeby działał na pewno dobrze, to trzeba kupić za pieniążki wersję certyfikowaną.

Tu se kliknijmy głośniej, tam kliknijmy mute, chodzi, no jakie to proste.

  • Lubię! 1
Link to post
Share on other sites

@jbanaszczyk miło widzieć, że artykuł zachęcił Cie do aktywności! Opublikowany tekst (zgodnie z informacją w tytule) to wstęp do tematu, który dedykowany jest dla osób początkujących. Jakoś trzeba było obrazowo przedstawić temat, aby więcej osób zrozumiało o co mniej więcej tutaj chodzi - autor zdecydował się na przykład z GUI i świetnie, bo dzięki temu dosłownie widać różnicę w działaniu programu. Tak, masz rację, że debugowanie i testowanie takich aplikacji jest trudniejsze - właśnie dlatego takie zastrzeżenie znalazło się w artykule. Wielowątkowość nie jest rozwiązaniem na wszystkie problemy 🙂

Dnia 8.02.2020 o 01:45, jbanaszczyk napisał:

A gdzie te wszystkie mutexy, semafory, kolejki z synchronizowanym dostępem, zmienne volatile, hazardy, obiekty synchrozniowane?

Nie było tu nawet jeszcze właściwych informacji na temat pisania takich aplikacji - na to przyjdzie czas w kolejnej części. Tak jak wspomniałem to jest seria dla osób początkujących - nie da się o wszystkim napisać w jednym artykule. Jeśli masz pomysł jak zrobić to lepiej to gorąco zachęcam do udziału w trwającym konkursie na artykuł o elektronice lub programowaniu. Napisz swój poradnik na temat wielowątkowości, opublikuj na forum i zgłoś go do konkursu. Do wygrania za pierwsze miejsce jest karta podarunkowa Allegro o wartości 1000 zł. Możemy liczyć na Twój udział w konkursie? 😉

Link to post
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.