D2.0 sınıfları, "sınıf nesnesinin ekranına erişim sağlayan" __monitor
sınıf özelliğine sahiptir (documentation). Biraz araştırdım ve this bit detayı dışında herhangi bir bilgi bulamadım. Yani: monitör nedir? Neden bir monitör synchronized member functions için kullanılır? Java benzeri üye işlevlerini senkronize etmek için kullanılan bir synchronization primitive mu? Ve eğer kullanmamanız gerekiyorsa, __monitor
özelliği, dil defasında neden/kullanım durumlarıdır?D'de bir sınıf monitörü nedir?
10
A
cevap
6
Monitör, tüm senkronize yöntemlerin Java'da olduğu gibi senkronize edildiği, tembel olarak başlatılmış bir nesnedir. Java'dan farklı olarak, D bir sistem programlama dilidir ve genelde kötü bir fikir olsa bile, bunları hacklemeniz gerektiğinde işlerin nasıl çalıştığına dair alt düzey detayları ortaya koyar. Bu davranışınızı özelleştirmenizi sağlar. Örneğin, bir sınıfın monitör nesnesini özelleştirmek veya bir monitörü kendisine ait olan sınıfla paylaşan core.sync.mutex
kullanmak mümkündür.
İlgili konular
- 1. MBean Basit Grafik Monitörü
- 2. Ters SSH tüneli monitörü
- 3. Monitörü açma/kapama
- 4. Android PC'deki performans monitörü
- 5. DDE hala önemli mi? Alternatifler hangileridir?
- 6. Dinamik Veri Değişimi (DDE) - Hala İlgili?
- 7. (Unix/Python) Etkinlik Monitörü% CPU
- 8. Akka çocuk monitörü yeniden başlatılıyor
- 9. php'de soyut sınıf nedir?
- 10. PHP'de sınıf nedir?
- 11. IIS 7 Güvenilirlik ve Performans Monitörü
- 12. Devam Monitörü içindeki IO monadından kaçış
- 13. xCode 4'te Bellek Monitörü - iPhone
- 14. Sınıf Diyagramında "Türetilmiş öznitelikler" nedir?
- 15. iOS 4.1 sınıf NSCFNumber nedir?
- 16. Penceremi DDE olayından sonra nasıl ön plana getirebilirim?
- 17. Bir nesneden başka JavaScript’de çağrılabilen bir anlık "sınıf" nedir?
- 18. Sınıf özelliğinde sınıf adına başvuruda bulunmanın en iyi yolu nedir?
- 19. Şişirilmiş sınıf ile etiketli sınıf arasındaki fark nedir?
- 20. bir uygulama olarak Kalp atış hızı monitörü uygulamasını yapmak zorunda, renk analizi (Nabız)
- 21. Java'da en üst düzey sınıf nedir?
- 22. Python sınıf referansları için adlandırma kuralı nedir?
- 23. Sınıf adıyla birleştirilen alt çizgi nedir?
- 24. PHP'de nesne ve sınıf arasındaki fark nedir?
- 25. İki spf'i bir araya getirin: Google Apps SPF + Kampanya Monitörü SPF =?
- 26. Ref türünde bir sınıf üyesine sahip olmanın amacı nedir?
- 27. C# içinde değişmez bir sınıf oluşturmanın en kısa yolu nedir?
- 28. Moose'da bir sınıf özelliği oluşturmanın en iyi yolu nedir?
- 29. Bir kutuyu temsil etmek için önerilen sınıf nedir?
- 30. Genel bir sınıf için varsayılan kurucu için sözdizimi nedir?
Teşekkürler. Yani, eğer 'object.d' 'ye bakarsam, bu monitör için bir' Object.Monitor '(aka 'IMonitor') arayüzü görüyorum. Benim uygulamak zorunda olduğum şey bu mu? Ve eğer 'core.sync.mutex' dosyasına bakarsam, örnek bir kullanım görüyorum (yorumlarda // // gibi bir şey var: DMD ile bu "o .__ monitor = & m_proxy" olabilir.). Doğru? – stephan
@stephan: Emin değilim, daha önce bununla uğraşmak zorunda kalmadım, bu yüzden onun detaylarını bilmiyorum. – dsimcha
Bir şey yapmazsanız, monitörü hiç uygulamak zorunda kalmamalı ya da kendiniz ayarlamamalısınız * çok * garip. Çeşitli senkronizasyon ilkelerini D'de birkaç kez kullandım ve hiçbir zaman böyle bir şey yapmak zorunda kalmam. –