Fonksiyon statik değişkenler güvenli iplik-GCC.
Örnek kodu
void foo()
{
static Bar b;
...
}
derlenmişGCCb
ve iş parçacığı için güvenli bir şekilde oluşturulan başlatılmış olacak bunun garantisi var mı ?
Gcc adamı sayfasında buldum- - iş parçacığı için güvenli-statik fnokomut satırı seçeneği:
Kullanımı için ekstra kod yaymaz rutinleri C belirtilen ABİ evresel yerel başlatma statiği. İçin bu seçeneği kullanabilirsiniz kod boyutu biraz kod düşüren -güvenli iş parçacığı. olmasına gerek yok
Yerel statik-güvenli iplik GCC ile varsayılan olarak yani, değil mi ? Yani
pthread_mutex_lock/unlock
İle Açık koruma örneğin koymak için hiçbir neden ?Nasıl olursa derleyici bekçileri katacak olmadığını kontrol etmek için nasıl taşınabilir kod yazmak için ? Yoksa GCC bu özelliği devre dışı bırakmak daha mı iyi ?
CEVAP
Hayır, o anlama geliyorbaşlatmayerel
static
s iş parçacığı için güvenli.Kesinlikle bu özelliği aktif bırakmak istiyorum. -Güvenli iş parçacığı yerel başlatma
static
s çok önemlidir. Eğer genellikle güvenli iş parçacığı erişim için yerel ihtiyacın olursastatic
s uygun korumaları kendiniz eklemek gerekir.
Statik başlatıcılar Java iş parçacığı ...
Android kullanarak statik değişkenler...
Neden ThreadLocal değişkenler statik J...
= Operatör güvenli iplik-Java mı?...
Fonksiyon genel değişkenler Python?...