LabVIEWForum.de
Aufruf einer DLL parallel zu subVI - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Aufruf einer DLL parallel zu subVI (/Thread-Aufruf-einer-DLL-parallel-zu-subVI)



Aufruf einer DLL parallel zu subVI - tiwo - 16.08.2012 13:44

Hallo LabVIEW Forum,

ich habe mit einem Problem zu kämpfen, welches ich mit den bisherigen Posts hier im Forum nicht gelöst bekomme.
Was ich tun möchte:

Ich möchte eine DLL die ich in C geschrieben habe einbinden. Das klappt auch mit einem Call Library Function Node ausgezeichnet.
Da die DLL eine sehr lange Laufzeit haben kann (bis zu 3 minuten), möchte ich parallel dazu ein VI aufrufen, welches mir den Fortschritt der DLL mit einer Fortschrittsanzeige (bar) anzeigt.

Im ersten Schritt möchte ich in diesem parallelen VI nur einen Zähler hochlaufen lassen und diesen als Fortschrittsanzeige anzeigen.

Das Problem ist nun, sobald im Programm die DLL aufgerufen wird, aktualisiert das Frontpanel meine Fortschrittsanzeige nicht mehr. --> Datenflussprinzip
Das möchte ich nun umgehen. Dazu habe ich hier im Forum zwei Möglichkeiten gefunden. Parallele Schleifen und Aufruf von SubVIs über Referenzen.

Ich habe die Möglichkeiten mit einfachen Beispielen (ohne Aufruf einer DLL) getestet und es funktionierte. Beides funktioniert jedoch nicht, wenn ich in einem SubVI eine DLL aufrufe. Ich habe meinen Code mit den parallelen Schleifen mal vereinfacht angehängt.

Ich hoffe es kann mir jemand helfen? Muss ich evtl. etwas an den VI Einstellungen ändern?

Danke und viele Grüße
tiwo

Lv10


RE: Aufruf einer DLL parallel zu subVI - BNT - 16.08.2012 14:29

Hi
Du musst in der dem DLL-Funktionsaufruf in den Thred-Optionen Run in any thread auswählen.
Dann wird das GUI nicht mehr blockiert.

Möglicherweise musst Du auch Deine DLL multi-threaded übersetzen.

Gruß Holger


RE: Aufruf einer DLL parallel zu subVI - tiwo - 16.08.2012 15:22

Vielen Dank für deine Hilfe, funktioniert super!

Viele Grüße
tiwo