|
|
|
Matlab Funktion nicht-blockierend pausieren? |
|
| Nikster |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 18.07.17
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.07.2017, 11:44
Titel: Matlab Funktion nicht-blockierend pausieren?
|
 |
Hallo allerseits,
für die Überschrift ist mir leider nichts besseres eingefallen, deshalb möchte ich mein Problem hier nochmal genauer darstellen:
Ich suche nach einer Möglichkeit, die Ausführung einer Matlab-Funktion auszusetzen und später fortzuführen, ohne das Matlab dabei komplett blockiert wird.
Konkrett geht es darum, dass ich nur alle 5 Minuten mit der Funktion eine (oder mehrere) Messungen (>1 Minute) starte. Funktionen wie pause, waitfor oder uiwait blockieren aber während dieser Zeit Matlab komplett, so dass ich z.B. nicht mal mehr die Kommandozeile benutzen kann.
Ein Timer wäre eine Möglichkeit, leider würde dann während der Messdauer ein anderer Timer, der alle 5 Sekunden losgeht, blockiert.
Hat hier vielleicht jemand eine Idee, wie man so etwas (ohne Toolboxen) realisieren kann? Vielen Dank im Vorraus für eure Hilfe.
mfg Nikster
|
|
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 18.07.2017, 17:35
Titel: Re: Matlab Funktion nicht-blockierend pausieren?
|
 |
Hallo Nikster,
Du kannst Matlab temporär mit dem
keyboard
Befehl anhalten und dann beliebig im CommandWindow arbeiten. Das ist aber tückisch, denn Du könntest auch die Daten verändern, mit denen gerade geabreitet wird.
| Zitat: |
| Konkrett geht es darum, dass ich nur alle 5 Minuten mit der Funktion eine (oder mehrere) Messungen (>1 Minute) starte. |
Wieso musst du dazu Matlab anhalten?
| Zitat: |
| Ein Timer wäre eine Möglichkeit, leider würde dann während der Messdauer ein anderer Timer, der alle 5 Sekunden losgeht, blockiert. |
Erkläre dies mal genauer. Es können mehrere Timer parallel laufen.
Du könntest aber auch 2 Matlab Sessions starten, in der einen arbeiten und die andere alle 5 Minuten die Messung starten lassen.
Gruß, Jan
|
|
|
|
| Nikster |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 18.07.17
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 18.07.2017, 22:33
Titel:
|
 |
Erstmal danke für die Antwort.
Es gibt im wesentlichen 2 Gründe, warum ich diese eine Matlab-Funktion anhalten möchte:
1. Ich ändere während des Laufens zum Teil Parameter über die Kommandozeile (größtenteils zu Testzwecken), was bei "Dauerbelastung" nicht geht.
2. Könnte man diese Zeit besser nutzen, um sich z.B. die Daten ausgeben zu lassen, etc.
Gerade der erste Punkt ist fürs Debugging im Moment noch sehr wichtig, da ich sonst ca. 6 Stunden darauf warten muss, ob ein Fehler auftritt.
Zu den Timern. Sowohl bei 2012b als auch 2015b blockiert meiner Beobachtung nach ein Timer den anderen. Wenn ich zum Beispiel als Timerfunktion pause(60) angebe, kann während dieser Zeit kein anderer Timer etwas machen. Da eine Messung 1 Minute oder mehr dauert und teilweise mehrere Messungen hintereinander laufen, blockiert dies den anderen Timer, der alle 5 Sekunden losgehen soll.
keyboard könnte sein, was ich suche. Ich werde es morgen mal ausprobieren.
|
|
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.
|
|