Die Vermeidung einer MEX-Datei vom Absturz in MATLAB

Habe ich eine MEX-Datei, die ich "ausgeliehen" von jemand anderem, um mir zu helfen-code ein semi-automatisiertes nuclear detection-Algorithmus. Das problem ist, dass die MEX-Datei sporadisch verursacht einen segmentation fault. Jedoch, wenn der code ausgeführt wird, mit den gleichen Parametern ein zweites mal, es ist in Ordnung.

Ich hoffte, dass es war eine Art try/catch idiom für die MEX-Dateien, aber nachdem die meisten meiner Samstag auf der Suche nach etwas, ich konnte nichts finden.

Jede Hilfe zu diesem Thema wäre toll! Ansonsten werde ich in den Hafen der .cpp in MATLAB (und es ist rund 10.000 Zeilen mit Hunderten von Abhängigkeiten :-().

  • Und Sie wollen nicht jeden code einen Unfall mit nuklearen zugehörigen codes. Könnte es beginnen Kriege!
  • Anstelle von wodurch ein segment-Fehler, Ungültiger Code kann auch ändern, zufällige Speicher-Adressen Ihrer Matlab-Prozess, akzeptieren Sie Fehler, die Sie können nicht sicher erkannt werden, ist eine schlechte Idee!
  • Sie haben wirklich keine Wahl, sondern korrigieren Sie den code. Wie @Daniel erwähnt, nicht jeder Fehler wird zu einer behandelbaren Ausnahme. Es ist genauso wahrscheinlich kann undetectably beschädigt andere Teile der MATLAB-Prozess " Adressraum.
InformationsquelleAutor user3546025 | 2014-05-17
Schreibe einen Kommentar