26.01.2015, 09:33
Hallo,
ich habe eine Frage zum Verhalten von DLLs, wenn sie aus LabVIEW heraus aufgerufen werden (über 'Call Library Funtion Node'):
wie verhält sich eine DLL, wenn sie von zwei Programmteilen gleichzeitg aufgerufen wird? In meiner Anwendung laufen zwei Prozesse
parallel und unabhängig zueinander und beide müssen auf die selbe DLL zugreifen. Jetzt könnte ich den gleichzeitigen Zugriff natürlich
von vorne herein verhindern, wenn ich den DLL-Aufruf in einem ablaufvarianten VI unterbringe. Ich möchte aber gerne wissen, wie sich
eine DLL verhält, wenn sie zur gleichen Zeit von 2 Programmteilen aufgerufen wird. Puffert die DLL die Anfragen (bzw. merkt LabVIEW,
dass die DLL gerade belegt ist und wartet) und die Abarbeitung erfolgt sequentiell, oder geht eine Anfrage verloren (oder resultiert in
einer Fehlermeldung von LabVIEW, da die DLL nicht aufgerufen werden konnte)?
Vielen Dank
Michael
ich habe eine Frage zum Verhalten von DLLs, wenn sie aus LabVIEW heraus aufgerufen werden (über 'Call Library Funtion Node'):
wie verhält sich eine DLL, wenn sie von zwei Programmteilen gleichzeitg aufgerufen wird? In meiner Anwendung laufen zwei Prozesse
parallel und unabhängig zueinander und beide müssen auf die selbe DLL zugreifen. Jetzt könnte ich den gleichzeitigen Zugriff natürlich
von vorne herein verhindern, wenn ich den DLL-Aufruf in einem ablaufvarianten VI unterbringe. Ich möchte aber gerne wissen, wie sich
eine DLL verhält, wenn sie zur gleichen Zeit von 2 Programmteilen aufgerufen wird. Puffert die DLL die Anfragen (bzw. merkt LabVIEW,
dass die DLL gerade belegt ist und wartet) und die Abarbeitung erfolgt sequentiell, oder geht eine Anfrage verloren (oder resultiert in
einer Fehlermeldung von LabVIEW, da die DLL nicht aufgerufen werden konnte)?
Vielen Dank
Michael