Kodumda Parallel.ForEach ve PLINQ kullanımı ne kadar çok olursa, daha fazla yüz ve kod incelemesi geri adım atıyorum. Bu yüzden, her LINQ ifadesinde PLINQ'ı aşırı uçta kullanmamın bir sebebi var mı? Çalışma zamanı, uygulama performansının iyileştirmek yerine gerçekten bozulacağı kadar çok iş parçacığı (veya iş parçacığı havuzundan çok fazla iş parçacığı tüketen) üretmeye başlamak için yeterince akıllı olamaz mı? Aynı soru Paralel kütüphane için de geçerlidir..NET 4 Parallel.ForEach ve PLINQ: İş parçacığı havuzunu bunaltabilir ve uygulama performansını öldürebilirler mi?
İş parçacığı güvenliği ve çoklu iş parçacığı kullanmanın ek yüküyle ilgili sonuçları anlıyorum. Ayrıca her şeyin paralelleştirmek için iyi olmadığını anlıyorum. Bütün bu yaklaşımları savunmaktan vazgeçip durmamam ve eğer bu iki iyi şeyden vazgeçmemi isterim diye düşünürsünüz, çünkü akranlarım .NET tesislerine güvenmek yerine iş parçacığı kontrolünü kendim yapar mıyım?
GÜNCELLEME: lütfen, donanımın çok kullanımlı kullanım için önkoşulları yerine getirmek için yeterince iyi olduğunu varsayalım.
El ile ayarlamadığınız sürece plinq yalnızca –
@ LukeMcGregor olan çekirdek sayısına bağlı olarak birkaç iş parçacığı kullanır: Varsayılanları ve bunları nasıl değiştireceğinizi biliyor musunuz? – Schultz9999