«volatile» etiketlenmiş sorular

Volatile, "kendi kendine değişebilen" bir veri depolama alanını (nesne, alan, değişken, parametre) tanımlamak için kullanılan bir niteleyicidir, dolayısıyla bazı kod üreteci optimizasyonlarına izin vermez. Bu niteleyiciyi tanıyan tüm dillerde olmasa da bazı dillerde bu tür verilere erişim iş parçacığı açısından güvenlidir.

22
Geçici anahtar kelime ne işe yarar?
Bugün iş yerinde, volatileJava'daki anahtar kelimeyle karşılaştım. Çok aşina olmadığım için şu açıklamayı buldum: Java teorisi ve uygulaması: Oynaklığı yönetme Bu makalenin söz konusu anahtar kelimeyi açıkladığı ayrıntı göz önüne alındığında, bunu hiç kullandınız mı veya bu anahtar kelimeyi doğru bir şekilde kullanabileceğiniz bir durum gördünüz mü?

9
Uçucuya Karşı Kilitli ve Kilitli
Diyelim ki bir sınıfın public int counterbirden çok iş parçacığı tarafından erişilen bir alanı var. Bu intyalnızca artırılır veya azaltılır. Bu alanı arttırmak için hangi yaklaşım kullanılmalı ve neden? lock(this.locker) this.counter++;, Interlocked.Increment(ref this.counter);, Erişim değiştiricisini olarak counterdeğiştirin public volatile. Şimdi keşfettiğime göre volatile, birçok lockifadeyi ve kullanımını kaldırdım Interlocked. Ama …


7
Atomik / uçucu / senkronize arasındaki fark nedir?
Atomik / uçucu / senkronize dahili olarak nasıl çalışır? Aşağıdaki kod blokları arasındaki fark nedir? Kod 1 private int counter; public int getNextUniqueIndex() { return counter++; } Kod 2 private AtomicInteger counter; public int getNextUniqueIndex() { return counter.getAndIncrement(); } Kod 3 private volatile int counter; public int getNextUniqueIndex() { return …

8
Java'da Uçucu ve Statik
Bunun statictüm nesneler volatileiçin değerin bir kopyası ve tüm evreler için değerin bir kopyası anlamına geldiğini söylemek doğru mudur ? Her neyse, staticdeğişken bir değer de tüm evreler için bir değer olacak, o zaman neden gitmeliyiz volatile?


4
Java'da uçucu ve senkronize arasındaki fark
Bir değişken olarak ilan volatileve her zaman synchronized(this)Java bir blokta değişken erişme arasındaki fark merak ediyorum ? Bu makaleye göre http://www.javamex.com/tutorials/synchronization_volatile.shtml söylenecek çok şey var ve birçok farklılık var, ancak bazı benzerlikler var. Bu bilgi parçasıyla özellikle ilgileniyorum: ... uçucu bir değişkene erişimin engellenme potansiyeli asla yoktur: sadece basit bir …

18
Neden uçucu var?
Ne geliyor volatileanahtar kelimeye? C ++ ile hangi sorunu çözer? Benim durumumda, bilerek asla buna ihtiyaç duymadım.
222 c++  volatile  c++-faq 

9
Uçucu, çok iş parçacıklı C veya C ++ programlamasında neden yararlı değildir?
Son zamanlarda gönderdiğim bu cevapta gösterildiği gibi volatile, çok iş parçacıklı programlama bağlamlarının faydası (veya eksikliği) hakkında kafam karışmış gibi görünüyor . Benim anlayışım şudur: Bir değişken, ona erişen bir kod parçasının kontrol akışının dışında her değiştirilebildiğinde, bu değişken olduğu bildirilmelidir volatile. Sinyal işleyicileri, G / Ç kayıtları ve başka …

5
Çoklu iş parçacığı ile uçucu ne zaman kullanılır?
Genel bir değişkene erişen iki iş parçacığı varsa, birçok öğretici, derleyicinin değişkeni bir kayıtta önbelleğe almasını önlemek için değişkeni uçucu hale getirdiğini ve dolayısıyla doğru şekilde güncellenmediğini söyler. Bununla birlikte, her ikisinin de paylaşılan bir değişkene erişmesi, muteks aracılığıyla koruma gerektiren bir şey değil mi? Ancak bu durumda, iş parçacığı …

8
"Uçucu" anahtar kelime ne için kullanılır?
На этот вопрос есть ответы на Stack Overflow için русском : Ключевое слово volatile в Java volatileAnahtar kelime hakkında bazı makaleler okudum ama doğru kullanımını bulamadım. C # ve Java'da ne için kullanılması gerektiğini bana söyler misiniz?
130 c#  java  volatile 

4
Uçucu pahalı mı?
Derleyici Yazarları için JSR-133 Cookbook for Compiler Writers'ı okuduktan sonra , özellikle "Atomik Talimatlarla Etkileşimler" bölümünü, güncellemeden uçucu bir değişkeni okumanın bir LoadLoad veya LoadStore bariyerine ihtiyaç duyduğunu varsayıyorum. Sayfanın ilerleyen kısımlarında LoadLoad ve LoadStore'un X86 CPU'larda etkin bir şekilde işlem yapılmadığını görüyorum. Bu, uçucu okuma işlemlerinin x86'da açık bir …

6
C # 'da uçucu anahtar kelimenin kullanımını gösteren resim
volatileAnahtar kelimenin davranışını görsel olarak gösteren küçük bir program kodlamak istiyorum . İdeal olarak, geçici olmayan bir statik alana aynı anda erişim sağlayan ve bu nedenle yanlış davranış gösteren bir program olmalıdır. Uçucu anahtar sözcüğün aynı programa eklenmesi sorunu çözmelidir. Bu başarmayı başaramadığım bir şey. Birkaç kez denemek, optimizasyonu etkinleştirmek …
88 c#  .net  volatile 

6
C ++ 'da uçucu ve değişken
Uçucu ve değişken arasındaki fark hakkında bir sorum var. Her ikisinin de değiştirilebileceği anlamına geldiğini fark ettim. Başka? Aynı şey mi? Fark ne? Nerelerde uygulanabilir? Neden iki fikir öneriliyor? Bunları farklı bir şekilde nasıl kullanırız? Çok teşekkürler.
86 c++  volatile  mutable 

13
C ++ uçucu anahtar sözcüğü bellek çiti sağlar mı?
onu anlıyorum volatile derleyiciye değerin değiştirilebileceği bilgi verdiğini , ancak bu işlevi başarmak için derleyicinin çalışmasını sağlamak için bir bellek çiti eklemesi gerekiyor mu? Anladığım kadarıyla, uçucu nesneler üzerindeki işlemlerin sırası yeniden düzenlenemez ve korunmalıdır. Bu, bazı hafıza sınırlarının gerekli olduğunu ve bunun gerçekten bir yolu olmadığını ima ediyor gibi …

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.