list :: empty () wielowątkowe zachowanie?

Mam listę, z której chcę, aby różne wątki pobierały elementy. Aby uniknąć zablokowania muteksu strzegącego listy, gdy jest pusta, sprawdzam empty()przed zablokowaniem. W porządku, jeśli wezwanie do list::empty()jest nieprawidłowe w 100% przypadków. Chcę tylko uniknąć awarii lub zakłóceń...