C geçici anahtar kelime kullanımını gösteren# | Netgez.com
SORU
25 EYLÜL 2008, PERŞEMBE


C geçici anahtar kelime kullanımını gösteren#

Görsel olarak volatile anahtar davranış gösteren küçük bir program kodu istiyorum. İdeal olarak, uçucu olmayan statik bir alan için eş zamanlı erişim gerçekleştiren ve bu yüzden yanlış bir davranış olur bir program olmalı.

Aynı programda geçici anahtar kelime ekleme sorunu düzeltmek gerekir.

Bir şey elde etmek için bunu başaramadık. Hatta birkaç kez, optimizasyonunu çalışırken, vb., Hep olmadan doğru bir davranış 'uçucu' anahtar kelime.

Bu konu hakkında herhangi bir fikrin var mı? Basit bir demo uygulaması böyle bir sorun simüle etmek nasıl biliyor musunuz? Donanım bağlı mı?

CEVAP
16 AÄžUSTOS 2009, Pazar


Çalışan bir örnek elde ettik!

Ana fikir wiki alınan, ama C için bazı değişiklikler ile#. Wiki makalesi C statik alan , olduğu gibi C# daima dikkatle bu statik alanlar için istekleri derleme gösterir... ve olmayan statik bir örnek olun:

Bu örnekte çalıştırırsanızBırakınmod vehata ayıklayıcı olmadan(Ctrl) F5 sonra bir çizgi (test.'foo=! 255)' optimize eder '(true)' ve ben bu programı verir. Ama ekledikten sonra 'geçici' sözcüğünü, her zaman 'TAMAM'.

class Test
{
    int foo;

    static void Main()
    {
        var test = new Test();

        new Thread(delegate() { Thread.Sleep(500); test.foo = 255; }).Start();

        while (test.foo != 255) ;
        Console.WriteLine("OK");
    }
}

Bunu PaylaÅŸ:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 24 Канал

    24 КанаÐ

    5 ÅžUBAT 2006
  • Justin Case

    Justin Case

    3 EKİM 2011
  • Samantha Crain

    Samantha Cra

    30 EKİM 2008