CPU release when waiting data through thread

A simple and maybe trivial question. When in a thread I wait data for example with

k_pipe_get( &pipe, &buffer, size, &bytesRead, totalSize, K_FOREVER );
is it like call continuously the k_yield()? How the api above works in the underhood?
Related