Autor Beitrag
jholzer
Hält's aus hier
Beiträge: 4



BeitragVerfasst: Mo 21.05.07 09:54 
Hi!
Ich bekomme in meiner Anwendung sehr merkwürdige Abstürze.
Die Anwendung ist ein .Net1.1/C#-Programm mit ein paar DLLs. Sie ist multithreaded und betreibt Kommunikation über RS232. Über RS232 werden Kommandos empfangen, die dann als vordefinierte Jobs abgearbeitet werden.
Irgendwann, so nach ca. 45min bis 1,5 Stunden, verschwindet die Anwendung einfach ohne irgendeinen Hinweis. Das Logging hört einfach auf (und von dem habe ich echt viel drin), aber nicht wirklich erkennbar an einer reproduzierbaren Stelle. Praktisch keine Zeile Code ist nicht von einem Try-Catch-Block umgeben, in jedem Catch-Block ist Logging drin, das mir meldet, wo was schiefgegangen ist.
Ich hab sogar um den "Application.Run(...)" in der Main-Routine einen Try-Catch mit Logging und MessageBox geseetzt, so dass eine Exception spätesten da auflaufen müsste. Loggings vor und nach dem Application.Run sollte mir eigentlich melden, wann die Applikation startet und wann sie endet. Das Ende kommt allerdings nur bei einem regulärem Quit. Beim Crash kommt gar nix mehr. Gerade so, als ob über den Task-Manager der Prozess gekillt würde…
Aber was das Merkwürdigste ist: Auf meiner Entwicklungsmaschine geht’s über Stunden hinweg. Auf einem anderen System (wo es mal eingesetzt werden soll) treten genau die o.g. Effekt auf.
Wer kann mir helfen?

Danke!
J.
UGrohne
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Veteran
Beiträge: 5502
Erhaltene Danke: 220

Windows 8 , Server 2012
D7 Pro, VS.NET 2012 (C#)
BeitragVerfasst: Mo 21.05.07 12:00 
Das hört sich sehr nach einem Deadlock an. Du sagtest die Anwendung ist multithreaded? Hast Du auch überall darauf geachtet, dass entsprechende Sync- und Sperrmechanismen greifen?