PerformanceCounter.Decrement Yöntem

Tanım

Verimli bir atomik işlem aracılığıyla ilişkili performans sayacını bir azaltma.

public:
 long Decrement();
public long Decrement ();
member this.Decrement : unit -> int64
Public Function Decrement () As Long

Döndürülenler

Azalan sayaç değeri.

Özel durumlar

Sayaç salt okunur olduğundan uygulama bunu geri çekemez.

-veya-

Örnek, bir performans sayacıyla doğru şekilde ilişkilendirilmemiş.

-veya-

InstanceLifetime Genel paylaşılan bellek kullanılırken özelliği olarak Process ayarlanır.

Sistem API'lerine erişilirken bir hata oluştu.

Açıklamalar

Yalnızca özel sayaçlara yazabilirsiniz. Tüm sistem sayaçları salt okunur durumdadır.

Not

Increment, IncrementByve Decrement yöntemleri, sayaç değerini güncelleştirmek için kilitleri kullanır. Bu, çok iş parçacıklı veya çok işlemcili senaryolarda sayaç değerinin doğru tutulmasına yardımcı olur, ancak aynı zamanda bir performans cezasıyla sonuçlanır. Birbirine kilitlenmiş işlemlerin sağladığı doğruluğa ihtiyacınız yoksa, 5 kata kadar performans geliştirmesi için özelliği doğrudan güncelleştirebilirsiniz RawValue . Ancak, çok iş parçacıklı senaryolarda, sayaç değerinde yapılan bazı güncelleştirmeler yoksayılabilir ve bu da yanlış verilere neden olabilir.

Not

Özelliğin InstanceLifetime değeri ise Process ve performans sayacı kategorisi .NET Framework sürüm 1.0 veya 1.1 ile oluşturulduysa, bir InvalidOperationException oluşturulur. Önceki sürümlerle oluşturulan performans sayacı kategorileri genel paylaşılan bellek kullanır ve değerinin InstanceLifetime olması Globalgerekir. Kategori, .NET Framework 1.0 veya 1.1 sürümlerinde çalışan uygulamalar tarafından kullanılmıyorsa, kategoriyi silin ve yeniden oluşturun.

Şunlara uygulanır

İş Parçacığı Güvenliği

Bu yöntem iş parçacığı güvenlidir.