Yazarlar Sözlük Makaleler Yardım Masası Gözlük Forum İstatistik

Tüm Başlıklar XML

1.  Thread'lerle çalışabilen, onlarla uyumlu olma
MrOK
27 Ocak 2005 08:44
2.  Thread-safe tasarım üzerine bir kaç söz:

1. Static veriler üzerinde çalışan static metodlardan kaçının. Çoğu client-server senaryoda static metodlar request'ler tarafından paylaşılır. Bu durumda farklı thread'ler aynı anda aynı static metodu çalıştırıyor olabilir. Her request için yeni instance'lar sağlayan tasarımları tercih edin.

2. Static veriler thread-safe olmalıdır.

3. Normal uygulamalarda kodunuz sadece bir thread tarafından çalıştırılır. Bu daha yaygın olan durumdur. Bu yüzden code kitaplıkları (API'ler, framework'ler) thread safe olacak biçimde yazılmaz. Ama dökümanlara dikkat edin, kullandığınız kitaplığın thread safety için çözümleri olabilir. Örneğin .Net'de ArrayList sınıfı default olarak thread safe değildir. Ama thread safe olarak kullanmak isterseniz ArrayList.Synchronized, ArrayList.IsSynchronized gibi metodları kullanabilirsiniz.

4. Thread safety için sık karşılaşılan yöntemlerden biri lock kullanımıdır. Lock'lar deadlock'lara neden olabilir. Dikkatli olun. Ayrıca fazla lock kullanımının performans üzerinde olumsuz etkisi vardır.

Bütün bunları okuduktan sonra "bu ne ya, hiç thread kullanmayayım daha iyi" diyorsanız, bunlar sadece öneridir, en iyisi deneyip görmektir. Zaten çok fazla sayıda thread yoksa, yani trafiğiniz azsa thread-safety yöntemlerini kullanmak zararsızdır.
fizikci
11 Ekim 2005 00:05
Bu konuda bildiklerinizi bizlerle paylaşabilirsiniz
Tabi bunun için yazarsanız giriş yapmalı, yazar değilseniz yazar olmalısınız.


Bu başlığa bkz veren girişlerin başlıkları nedir?

Bu başlığa bkz veren girişler başka hangi başlıklara bkz verdiler?
© 2005, Bilişim Kulübü. (1109 ms)
Ne yapabilirsin: SubtitleClick ile İngilizceni Geliştir, Çınar Framework ile kod yaz, Eglencelik.org'ta biraz eğlen