2 Stimmen

Kann das Matlab-Befehlsfenster nach 1 Tag Laufzeit nicht mehr sehen

Mein Programm läuft schon sehr lange. Ich habe gestern begonnen, es laufen zu lassen. Jetzt kann ich das Befehlsfenster und den Editor nicht mehr sehen, wenn ich sie in der Taskleiste anklicke. Ich habe auch die Schaltfläche "Wechseln zu" des Task-Managers ausprobiert.

Das Programm zeigt einige Meldungen im Befehlsfenster an, wenn es läuft. Dadurch wird der aktuelle Schritt des Programms bestimmt.

Wie kann ich herausfinden, ob mein Programm korrekt ausgeführt wird? Oder wie kann ich herausfinden, ob es in einer Endlosschleife gefangen ist oder ob MATLAB abgestürzt ist.

Beide CPU-Kerne sind ausgelastet. Die CPU-Auslastung liegt zwischen 50-70 Prozent, und MATLAB belegt 1.658.044 K Speicher.

4voto

Sevenless Punkte 2765

Matlab neigt dazu, abzustürzen, wenn es längere Zeit geöffnet ist und läuft. Das ist mir schon öfter passiert, als ich mich erinnern kann. Wenn Matlab nach einem Tag nicht mehr reagiert, ist es mir selten gelungen, den Code zu beenden. Sie müssen Ihr Programm wahrscheinlich neu starten.

Es gibt ein paar Dinge, die ich Ihnen empfehle, wenn Sie mit lang laufenden Code-Stücken arbeiten.

Finden Sie zunächst eine Möglichkeit, Zwischenergebnisse zu speichern. Da ich im Allgemeinen mit iterativen numerischen Algorithmen arbeite, speichere ich meinen Arbeitsbereich nach ein paar Iterationen meines Algorithmus. Etwas Einfaches wie temp.mat . Auf diese Weise können Sie bei einem Absturz von Matlab Ihre Arbeit mit den Zwischenergebnissen fortsetzen.

Zweitens, wenn Sie die Matlab-GUI nicht brauchen, dann benutzen Sie sie nicht. Öffnen Sie in Ihrem Fall eine DOS-Eingabeaufforderung und starten Sie Matlab ohne den Desktop. Der Befehl dazu lautet in etwa wie folgt:

start matlab -nosplash -nodesktop -minimize -r matlab_filename_here -logfile c:\temp\logfile

Ich bin kein Windows-Benutzer. Dieser Befehl könnte die grafische Benutzeroberfläche starten, aber sie bleibt verborgen. Auf *NIX-Systemen wird sie nicht gestartet, und das hilft definitiv bei der erfolgreichen Bewertung von lang laufenden Programmen. Probieren Sie es aus und sehen Sie, ob es hilft.

Viel Glück!

2voto

Seçkin Savaşçı Punkte 3376

Der beste Weg, um herauszufinden, ob ein Programm abgestürzt ist, ist, den "Ressourcenmonitor" von Windows zu öffnen. Überprüfen Sie, ob Ihr laufender Matlab-Task einen variierenden Festplatten- und Speicherzugriff in der Zeit hat.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X