Функция, которая блокирует выполнение вызывающего потока до тех пор, пока указанный набор условий, были выполнены.