Z prostej analizy powyższego opisu można wysnuć wniosek, że gabinet będzie funkcjonował poprawnie: golibroda będzie obsługiwał każdego chętnego klienta, a gdy ich zabraknie, będzie spał, dopóki nie zjawi się kolejny. W praktyce może pojawić się wiele problemów, które dobrze ilustrują potencjalne trudności w komunikacji międzyprocesowej.
Wszystkie te problemy wynikają z faktu, że działania wykonywane przez golibrodę jak i klienta (sprawdzanie stanu poczekalni, wchodzenie do gabinetu, zajmowanie krzesła w poczekalni, itd.) zajmują nieznaną ilość czasu. Klient może po wejściu zobaczyć, że golibroda jest zajęty. Zdecyduje w takim razie, że powinien udać się do poczekalni. Podczas gdy klient jest w drodze, golibroda kończy obsługiwać poprzedniego klienta i również idzie do poczekalni, by sprawdzić, czy jest tam kolejny klient. Nie ma tam jednak nikogo (bo nowy klient jeszcze tam nie dotarł), więc golibroda wraca do gabinetu i zasypia. Następnie nowy klient zajmuje miejsce w poczekalni. W takiej sytuacji golibroda czeka na klienta, podczas gdy ten sam klient czeka w poczekalni na golibrodę. Innym przykładem może być sytuacja, w której dwóch klientów przychodzi do golibrody w tym samym czasie, podczas gdy w poczekalni jest jedno wolne miejsce.