list :: empty () perilaku multi-utas?

Saya punya daftar yang saya ingin utas berbeda untuk mengambil elemen. Untuk menghindari mengunci mutex yang menjaga daftar ketika kosong, saya periksa empty()sebelum mengunci. Tidak apa-apa jika panggilan list::empty()tidak 100% benar. Saya hanya ingin menghindari menabrak atau mengganggu...