Verhindern, dass Programm mit Windows Exception abbricht

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Der Eisvogel

Betreff: Verhindern, dass Programm mit Windows Exception abbricht

BeitragSo, Mai 30, 2010 10:15
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo
Derzeit schreibe ich ein Programm, dass mit im Moment noch 3 Threads arbeitet. Nun kommt es doch manchmal vor, dass ein Thread einen WINDOWS_ACCESS_VIOLATION hervor bringt. Die andern 2 Thread laufen allerdings Fehlerfrei weiter. Wenn man jetzt bei der Meldung auf OK drückt, beendet sich das ganze Programm. Kann man es irgendwie machen, dass sich nur der jeweilige Thread beendet, um diesen nach einem Absturz erneut zu starten? Oder kann ich sobald meine Programm mitebekommt "OH, da ist ne Windows Exception" den Thread von einem noch laufenden Thread aus killen und erneut starten?
Eigentlich spielt es ja auch gar keine Rolle wie ich es mache, solange das Programm einfach weiter läuft. Denn es ist schon blöd, wenn ein Thread crasht und die anderen problemlos laufen, dass dann einfach das Programm nach einem Klick auf OK crasht.

MfG
Der Eisvogel
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.

D2006

Administrator

BeitragSo, Mai 30, 2010 11:14
Antworten mit Zitat
Benutzer-Profile anzeigen
Du scheinst da ganz offensichtlich mit dem einen Thread schreibend auf Datenstrukturen eines anderen Threads zuzugreifen. Wäre es nicht um den Faktor-X empfehlenswerter, diesen Fehler zu finden und zu beheben?
Intel Core i5 2500 | 16 GB DDR3 RAM dualchannel | ATI Radeon HD6870 (1024 MB RAM) | Windows 7 Home Premium
Intel Core 2 Duo 2.4 GHz | 2 GB DDR3 RAM dualchannel | Nvidia GeForce 9400M (256 MB shared RAM) | Mac OS X Snow Leopard
Intel Pentium Dual-Core 2.4 GHz | 3 GB DDR2 RAM dualchannel | ATI Radeon HD3850 (1024 MB RAM) | Windows 7 Home Premium
Chaos Interactive :: GoBang :: BB-Poker :: ChaosBreaker :: Hexagon :: ChaosRacer 2

Der Eisvogel

BeitragSo, Mai 30, 2010 11:28
Antworten mit Zitat
Benutzer-Profile anzeigen
Das Problem ist, ich weis nicht wie ich das angehen soll. Ich bekomme die Meldung einmal am Tag. Ich habe shcon alles Möglich versucht, aber die Meldung kommt immer wieder. Das Problem ist halt, dass ich nach jedem neuen Versuch einen Tag warten muss. Sonst kann ich nicht sehen, ob das der Fehler war.
Ungarische Notation kann nützlich sein.
BlitzMax ; Blitz3D
Win 7 Pro 64 Bit ; Intel Core i7-860 ; 8 GB Ram ; ATI HD 5750 1 GB
Projekte: Window-Crasher
Ich liebe es mit der WinAPI zu spielen.

BladeRunner

Moderator

BeitragSo, Mai 30, 2010 11:47
Antworten mit Zitat
Benutzer-Profile anzeigen
Mache an JEDE deiner Berechnungen die Daten aus mehreren Threads betreffen können eine Ausgabe in den Debuglog, oder wahlweise lasse jeden Thread seine eigene Log-datei führen. Wenn dann einer der Threads crasht kannst Du nachlesen wo es passierte.
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3
Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64
B3D BMax MaxGUI

Stolzer Gewinner des BAC#48, #52 & #92

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group