Współbieżność a równoległość
Współbieżność odnosi się do zdolności programu lub systemu do wykonywania wielu zadań jednocześnie lub w tym samym czasie. Można to osiągnąć na wiele sposobów, w tym przy użyciu wielu rdzeni procesora, wielu procesów lub wielu wątków w ramach jednego procesu. Współbieżność może być przydatna do poprawy wydajności i wydajności niektórych typów programów, takich jak te, które wykonują długotrwałe zadania lub wymagają długiego oczekiwania.
Co to jest równoległość?
Z drugiej strony równoległość odnosi się do możliwości wykonywania wielu zadań jednocześnie, zwykle przy użyciu wielu rdzeni procesora. Równoległość jest formą współbieżności, ale wymaga użycia specjalistycznego sprzętu, takiego jak procesor wielordzeniowy, w celu osiągnięcia rzeczywistego równoczesnego wykonywania.
Różnica
Zasadnicza różnica między współbieżnością a równoległością polega na tym, że współbieżność polega na zajmowaniu się wieloma rzeczami w tym samym czasie (daje złudzenie równoczesności) lub obsłudze współbieżnych zdarzeń zasadniczo ukrywających opóźnienie. Wręcz przeciwnie, równoległość polega na robieniu wielu rzeczy w tym samym czasie w celu zwiększenia prędkości. Krótko mówiąc, współbieżność umożliwia wykonywanie wielu zadań w tym samym czasie, ale niekoniecznie wykonywanie ich w tym samym czasie. Z drugiej strony równoległość wymaga jednoczesnego wykonywania wielu zadań.
Przykład
Wyobraź sobie, że prowadzisz restaurację i masz do wykonania następujące zadania:
- ugotuj jedzenie
- Podawaj jedzenie klientom
- Umyj naczynia
Jeśli jednak zatrudnisz dodatkowych pracowników, możesz podzielić zadania między nich i wykonywać wiele zadań jednocześnie. Na przykład jeden pracownik może gotować jedzenie, inny może podawać jedzenie klientom, a trzeci może myć naczynia. Jest to przykład współbieżności, ponieważ w tym samym czasie trwa wiele zadań, ale niekoniecznie muszą one być wykonywane jednocześnie.
Z drugiej strony, jeśli zainwestowałeś w specjalistyczny sprzęt, taki jak zmywarka do naczyń i robot kuchenny, możesz wykonywać zadania równolegle, przy czym każdy element sprzętu obsługuje osobne zadanie. Na przykład zmywarka może myć naczynia, podczas gdy robot kuchenny przygotowuje składniki do następnej partii jedzenia. Jest to przykład zarówno współbieżności, jak i równoległości, ponieważ wiele zadań jest w toku w tym samym czasie i jest również wykonywanych jednocześnie.
Streszczenie
Podsumowując, współbieżność umożliwia wykonywanie wielu zadań w tym samym czasie, ale niekoniecznie w tym samym czasie, podczas gdy równoległość wymaga jednoczesnego wykonywania wielu zadań.
W przyszłych blogach zajmiemy się wielowątkowością i wieloprocesorowością. Będzie to seria blogów poświęconych tematom związanym z tymi pokrewnymi dziedzinami.
Miłej nauki!!

![Czym w ogóle jest lista połączona? [Część 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































