' schrieb:So ganz hab ich deinen Sourcecode nicht verstanden.
Zum "Füttern" der Sendetask respektive des Sendethreads von LV aus musst du in LV ja einen DLL-Knoten programmieren. Dieser Knoten ruft dann eine Funktion innerhalb der DLL auf. Diesem Knoten werden Daten mitgegeben. Zuletzt wird der Knoten beendet !
Hab ich das jetzt richtig aus deinem Sourcecode herausgelesen: Die Funktion, die du von LV aus zum Schreiben aufrufst, hat eine Endloasschleife mit "while(1)" ?
Wenn dem so ist: Wie wird die Funktion beendet? Ohne dass die Funktion beendet wird, wird auch LV nicht weiterlaufen. Die Funktion MUSS beedendet werden, ansonsten bleibt LV am Knoten hängen (was übrigens auch jede andere Programmiersprache machen würde.
Aus LabVIEW rufe ich eine Funktion auf die Zwei Threads und eine Pipe erzeugen und die Werte an die Threads weitergibt
Die beiden Thread haben eine Endlosschleife. Das Problem ist bei mein Lese-Thread muss ich immer überprüfen ob was in der Pipe steht
Bei mein Schreibe-Thread muss nicht unbedningt eine Endlosschleife rein. Die Threads sollten nicht das Porblem sein, die laufen Parrallel.
Ich habe auch schon überlegt ob ich das nicht anderes mache. Das ich zwei Funktionen habe eine zum lesen und ein zum schreiben und die Lese-Funktion in eine While -Schleife unter LabVIEW Setzten, dann könnte ich unter LabVIEW die Schleife jederzeit abbrechen. Bloss dann müsste ich an den Schreib Thread ein Handle übergeben zum schreiben in die Pipe. Ist nur die Frage wie ich den Handle übergebe.