boost/thread/mutex.hpp
adresinden boost::mutex
kullanacağım. /kilit açma mutex'i kilitlemek için birkaç yol vardır: scoped_lock
, unique_lock
, lock_guard
muteksi üye fonksiyonları ::lock()
ve ::unlock()
ve nonmember fonksiyonları lock()
ve unlock()
ile.boost scoped_lock vs düz kilitleme/kilit açma
Bu boost::scoped_mutex
, mutex'i kullanmanın en popüler yollarından biri olduğunu farkettim. Neden üye işlevleri ::lock()
ve ::unlock()
tercih edilir?
Özellikle, neden
{
boost::scoped_lock lock(mutex)
// ...
// read/output sharing memory.
// ...
}
yerine
mutex.lock()
// ...
// read/output sharing memory.
// ...
mutex.unlock()
sırf görüş bazı stil kodlama noktasının daha iyi
scoped_lock
veya
::lock()/::unlock()
değil "parçacığı yeterince güvenli" olandan
kullanmalıyım?
Açık bir açıklama için teşekkür ederiz. – Max
@Max: Yardım ettiğine sevindim –