■ Konieczność dekompozycji problemu na niezależne od siebie części mogące być wykonywane równolegle.
■ Mechanizmy synchronizacji wprowadzają dodatkowy narzut czasowy na ich obsługę, co przy ich nieumiejętnej implementacji lub użyciu może nawet doprowadzić do zwiększenia czasu wykonania obliczeń.
■ Złożone testowanie programu wymagające uwzględnienia dynamiki zmian stanów procesów.
■ Wyniki obliczeń współbieżnych mogą być zależna od czasu funkcją danych wejściowych. Powtórzenie błędnego obliczenia, w celu umiejscowienia i poprawienia błędów, jest niemożliwe.
Podstawowe pojęcia programowania współbieżnego 13