2013-03-21 15 views
5

Dize sözlüğü ile çalışan bir sınıfım var. Bir yöntem, sözlüğü başlatmak için, diğeri sözlükte yeni çift eklemek içindir ve üçüncü yöntem, dizgeye sözlüğü birleştirmek içindir.MS CHESS modası geçmiş mi?

Aynı anda farklı iş parçacıklarında * -adding-finalizing yöntemlerini çalıştırarak, iş parçacığı güvenli ise birim-test etmek istiyorum. Kullanmadan önce sınıfın yeni bir örneği oluşturulur, sözlük statik değildir. Bu yüzden emin de olsa emin olmak isterim.

Afaik, birim-testlerde test ipler iyi bir fikir değildir. Bunun yerine, tam olarak aynı amaçla tasarlanmış bir CHESS bulmuştum: http://blog.decarufel.net/2009/05/how-to-test-your-multi-threaded-code.html

Ancak, modası geçmiş gibi görünüyor. Bu alanda modern alternatifler/öneriler var mı?

+0

olası yinelenen [Nasıl birim testi dişli gereken kod?] (Http://stackoverflow.com/questions/12159/how-should-i-unit-test-threaded-code) – marr75

cevap

3

Alternatif olarak, sen ConcurrentDictionary türünü kullanarak en yönelecek uzak soyut bu belirli çoklu endişeleri bir bakabilirim. Ancak, kendi mekanizmanızı kullanmaya devam etmek istiyorsanız (veya çok iş parçacıklı kodun nasıl test edileceği sorusuna genel bir yanıt vermek isterseniz), CHESS'in hiçbir şekilde modası geçmediği this post görünmektedir. Temel alınan teknoloji - çoklu kullanım - bu araç ilk yayınlandığından beri hiç bir şekilde değişmedi, bu yüzden bunu kullanırken belirli bir sorun olmadıkça, devam etmek kesinlikle mantıklı.

+0

teşekkürler , mükemmel cevap. –