In einer App, die ich geschrieben habe, löschen wir und erstellen die Leistungsindikatoren neu, wenn die App hochfährt.Beim Löschen und Erstellen von Leistungsindikatoren in einem Dienst kann es den Dienst hängen
Wenn Sie dies von einer Konsole aus ausführen, löscht und erstellt die Anwendung die Zähler und die Zählerkategorie fein.
Wenn wir von einem Dienst ausgeführt wird, löscht die App den Zähler Kategorie wie erwartet, aber wenn die neue Kategorie zu schaffen hängt es, bis die Servicezeiten heraus
if (PerformanceCounterCategory.Exists(CATEGORY_NAME))
{
PerformanceCounterCategory.Delete(CATEGORY_NAME);
}
ok funktioniert, aber dann hängt bei diesem Verfahren
private PerformanceCounterCategory RecreateTheCategory()
{
PerformanceCounterCategory category = null;
if (!PerformanceCounterCategory.Exists(CATEGORY_NAME))
{
category = PerformanceCounterCategory.Create(CATEGORY_NAME, CATEGORY_HELP,
PerformanceCounterCategoryType.SingleInstance,
counterCreationDataCollection);
}
return category;
}
in der Zeile .Exists. Ich erwarte, dass dies etwas mit Berechtigungen zu tun ist, aber in der Produktion haben wir den Dienst als lokales System ausgeführt ich es wirklich in Code beheben müssen, ohne das Benutzerkonto
Dank erhebend
Markiere deinen Kommentar als die akzeptierte Antwort dann wissen wir nicht zu versuchen, um es zu beantworten. –