Problem śpiącego golibrody (ang. sleeping barber problem) – klasyczny informatyczny problem komunikacji i synchronizacji pomiędzy kilkoma procesami. Można go przedstawić za pomocą analogii do pracy golibrody, który odpoczywa w gabinecie, gdy nie ma klientów, i obsługuje ich, gdy się pojawiają.

Problem Analogia bazuje na hipotetycznym gabinecie z jednym golibrodą. Golibroda ma jedno krzesło w swoim gabinecie, a obok znajduje się poczekalnia z pewną liczbą krzeseł dla klientów. Gdy golibroda kończy golić brodę klienta, pozwala mu opuścić gabinet, po czym idzie do poczekalni sprawdzić, czy jakiś klient tam czeka. Jeśli tak, przyprowadza go do gabinetu, sadza na krześle i goli jego brodę. Jeśli jednak nikt nie czeka w poczekalni, golibroda wraca do gabinetu i zasypia na swoim krześle.

Przychodzący klient sprawdza najpierw, co robi golibroda. Jeśli golibroda śpi, klient budzi go i siada na jego krześle, gdzie jest obsługiwany. Jeśli golibroda aktualnie pracuje, klient wchodzi do poczekalni. Jeśli w poczekalni jest wolne krzesło, klient siada na nim i czeka na swoją kolej, jeśli natomiast nie ma wolnego krzesła, klient wychodzi.