![]() |
AW: Mein Prozess hat auf einmal hundertausende Handles
Eventuell vergessen im Fehlerfall noch offene Handles zu schließen? Try...except...end?
|
AW: Mein Prozess hat auf einmal hundertausende Handles
Dann, denke ich, würde das bei allen Installation auftreten und höchstwahrscheinlich auch die Handle-Anzahl mit der Zeit kontinuierlich wachsen.
Ich werde zunächst irgendwie mal ein bisschen Logging einbauen was die Handle-Anzahl des eigenen Prozesses angeht, bei dem Kunden aktivieren und ansonsten denke ich darüber nach alle Druckvorgänge in einen eigenen Prozess auszulagern, den könnte man nach jedem Druck-Vorgang schließen... |
AW: Mein Prozess hat auf einmal hundertausende Handles
Zitat:
Eventuell knallt es ja auch nur bei diesem Kunden, dann würde eine falsche Fehlerbehandlung auch nur da zuschlagen. |
AW: Mein Prozess hat auf einmal hundertausende Handles
War denn 23 Stunden und 59 Minuten alles gut und schön und grüne Wiese mit Regenbogeneinhörnern mit Puschelschwänzchen UND DANN ging der Hades auf und verschlang alle Handles des Systems ODER stieg nur für dieses System kontinuierlich vom Start an im Laufe der Zeit die Anzahl der Handles?
Workaround Idee 1: Ist es praktikabel eure Anwendung alle XX Stunden automatisch neu zu starten? Workaround Idee 2: Druckausgaben in PDF umleiten und die dann später zum Netzwerkdrucker schicken? Idee von Luckie nochmal aufgreifen und alle Try-Handler angucken. Irgendwo werden Handles im Fehlerfall nicht zu gemacht. Wird der Fehler wirklich protokolliert? Ggf. schluckt das einfach die RTL oder sonstige verbaute Internet-Komponenten und man bekommt nichts mit? |
AW: Mein Prozess hat auf einmal hundertausende Handles
Nur der Vollständigkeit halber:
Natürlicgh kann es sein, dass z.B. ein Usermdedriver des Druckers/Printsystems hier durchdreht und die Handles nicht im eigenen, sondern in fremden Code entstehen (dort nicht richtig freigegeben werden). Mit einem anderem Programm drucken und da schauen, ob das Problemchen dort auch auftritt. PS: Man kann die eigene Anwendung auch auf mehrere EXEn verteilen und das Ausdrucken in einem Subsystem erledigen, damit der Hauptprozess störungsfreier arbeiten kann. |
AW: Mein Prozess hat auf einmal hundertausende Handles
Zitat:
Zitat:
Zitat:
Zitat:
|
AW: Mein Prozess hat auf einmal hundertausende Handles
Etwas zum Loggen.
![]() Wir hatten auch ab und an mal Probleme mit irgendwelchen Ressourcen, in einem Service, beim Kunden. Bei uns läuft daher im Hintergrund ein Thread, der regelmäßig danach schaut und das loggt. So können wir dann nachsehen wann in der letzten Woche sich dort was änderte. > Speicher (HDD, System-Memory, VirtualMemory, DelphiMM-Allocation), Handles, Threads, CPU-Auslasung (Prozess und System), Status einiger Locks (CritialSections), ... |
AW: Mein Prozess hat auf einmal hundertausende Handles
|
AW: Mein Prozess hat auf einmal hundertausende Handles
OT:
Das Schlimme ist, das bei solchen aufwendigen und zeitraubenden Fehlern die Ursache sich innerhalb von ein bis drei Zeilen Quelltext finden und fixen lässt. Der Aufwand zur Fehlersuche und tatsächliche Fehlerbehebung stehen oft in einen krassen Missverhältnis. |
AW: Mein Prozess hat auf einmal hundertausende Handles
Oh ja. Aber noch viel schlimmer als diese drei Zeilen (die potentiell noch bei anderen Kunden zutreffen könnten) wäre die Tatsache wenn es sein beschissener Netzwerkdrucker ist den es nur bei ihm gibt :twisted:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:12 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz