INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Pausieren von parallel ablaufenden Producer/Consumer Schleifen



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

21.06.2010, 17:46
Beitrag #12

Lucki Offline
Tech.Exp.2.Klasse
LVF-Team

Beiträge: 7.699
Registriert seit: Mar 2006

LV 2016-18 prof.
1995
DE

01108
Deutschland
Pausieren von parallel ablaufenden Producer/Consumer Schleifen
' schrieb:Da fällt mir gerade ein:
Auch wenn die Prozesskette zu langsam ist, muss sich Prozess 1 eigentlich um gar nichts kümmern: Einfach in die Queue reinschreiben. Wenn die Queue bereits voll ist, wird der letzte Puffer einfach ignoriert und geht automatisch verloren.

' schrieb:Nur kleine Ergänzung: "Automatisch" geht nichts verloren. Man muß zum Reinschreiben schon die Funktion "Element einfügen (verlustbehaftet)" verwenden und nicht die ansonsten übliche Funktion "Element einfügen"

Und mir fällt jetzt beim Lesen ein paar Tage später noch was ein:
Man muß gar keine Daten wegwerfen. Erzeuger- und Verbraucherschleife synchronisieren sich immer, ganz gleich welche von beiden schneller ist. Die langsamere der beiden Schleifen bestimmt den Takt. Man muß zum Hineinschreiben nicht das VI "Verlustbehaftet" nehmen und Daten verloren gehen lassen.

Verbraucher ist schneller: In der Verbraucherschleife wartet die Funktion "Element entfernen" immer solange, bis wieder ein Element im Puffer ist. (genügend großes Timeout vorausgesetzt)

Erzeuger ist schneller: Die Puffer läuft allmählich voll. Wenn er voll ist, dann wartet die Funktion "Element hinzufügen" so lange, bis wieder Platz für 1 Element ist. (genügend großes Timeout vorausgesetzt)

Natürlich kann es da trotzdem Probleme geben. Eine kontinuierliche DAQ-Datenerfassung läßt sich z.B. nicht durch Anhalten der Schleife stoppen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Nachrichten in diesem Thema
Pausieren von parallel ablaufenden Producer/Consumer Schleifen - Lucki - 21.06.2010 17:46

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
Rainbow Programm pausieren Kaya 14 6.922 11.09.2023 12:15
Letzter Beitrag: GerdW
  Queue verwendung in komplexer Producer/Consumer Abhängigkeit Ksanto 8 5.216 03.04.2017 20:14
Letzter Beitrag: Ksanto
  2 Schleifen parallel bedienen HTL_HL 3 4.081 12.02.2016 13:05
Letzter Beitrag: Lucki
  Mehrere Schleifen parallel ausführen! houss 7 12.326 06.08.2013 14:41
Letzter Beitrag: houss
  Producer/Consumer? Neon88 2 4.795 12.09.2012 17:07
Letzter Beitrag: Neon88
  VI pausieren ohne Blockdiagramm anzuzeigen 052ftemu 4 4.543 27.06.2012 16:34
Letzter Beitrag: 052ftemu

Gehe zu: