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 

Buffer reservieren + Pointer auslesen



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!

05.09.2008, 18:00
Beitrag #10

Martin.Henz Offline
LVF-Team
LVF-Team

Beiträge: 426
Registriert seit: Jan 2005

2.5.1 bis 20
1992
kA

74363
Deutschland
Buffer reservieren + Pointer auslesen
' schrieb:Ja, genau das habe ich ja geahnt, deswegen wollte ich gern mal gucken, was für eine Adresse da übergeben wird.
Wenn das stimmt, dann aber warum? Ich initialisiere doch in jedem Durchlauf ein neues Array!?
LabVIEW optimiert das weg. Wozu sollte es aus der Sicht von LabVIEW auch gut sein, bei jedem Schleifendurchlauf erneut den Speichermanager aufzurufen. Die Daten werden ja nicht mehr gebraucht. Der einmal reservierte Speicher kann (an der Stelle) durchaus bei jeder Iteration wiederverwendet werden.

Zitat:Das hatte ich auch schon probiert. Du meinst, dann das Array mittels "Index-Eingang" (habe jetzt nicht mehr im Kopf, wie das bei LabVIEW genau heißt) übergeben?
Ja. Da das, wie du schreibst, auch schon nicht funktioniert, wird mein erster Vorschlag auch nicht funktionieren.

Zitat:Wäre mir auch klar. Allerdings funktioniert dieses Vorgehen prinzipiell und wurde von IDS in allen möglichen Beispielen und auch von mir schon erfolgreich so umgesetzt.
Um es diplomatisch zu formulieren: Sich darauf zu verlassen, dass LabVIEW den Speicher nicht freigibt (was zumindest in der Regel so ist), das ist kein guter Lösungsansatz. Sobald ein Speicherbereich (aus LabVIEW Sicht) nicht mehr benötigt wird, kann LabVIEW damit machen was es will. Es ist nicht sichergestellt, dass das in jeder Situation funktioniert.

Zitat:Heute gab es einen kleinen Durchbruch: Es ist mir gelungen, die dll-interne Speicherallokation erfolgreich durchzuführen.
Na dann: Gratulation und viel Erfolg am Montag.
Bleib bei einer solchen oder ähnlichen Lösung (alles andere ist irgendwie krank). Wo und auf welchem Weg du an den Speicher kommst, das ist ja ziemlich egal. Über die DLL eigenen Funktionen, direkt über das Betriebssystem oder auch durch Aufrufe des LabVIEW Speichermanagers (siehe Hilfe, DSNewPtr(), DSDisposePtr()...).

Martin Henz
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Nachrichten in diesem Thema
Buffer reservieren + Pointer auslesen - Peter Knauer - 04.09.2008, 16:19
Buffer reservieren + Pointer auslesen - Peter Knauer - 05.09.2008, 00:05
Buffer reservieren + Pointer auslesen - Peter Knauer - 05.09.2008, 15:35
Buffer reservieren + Pointer auslesen - Martin.Henz - 05.09.2008 18:00
Buffer reservieren + Pointer auslesen - Peter Knauer - 05.09.2008, 23:31
Buffer reservieren + Pointer auslesen - Peter Knauer - 09.09.2008, 10:50

Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Datenübergabe an DLL Pointer to Pointer Reiling 2 9.566 02.02.2018 10:59
Letzter Beitrag: Reiling
  Absturz durch unzulässige Pointer VS_03 3 10.274 28.10.2016 18:32
Letzter Beitrag: VS_03
  dll mit Pointer auf komplexe Struktur einbinden Wedgewood 11 16.988 27.04.2014 23:44
Letzter Beitrag: Wedgewood
  Pointer auf Array mit Labview übertragen und darstellen lupus022 35 32.400 19.07.2013 10:53
Letzter Beitrag: lupus022
  Pointer und MoveBlock OXO 4 8.191 03.06.2013 16:31
Letzter Beitrag: OXO
  Pointer auf Subarray übergeben Event Horizon 5 7.382 15.07.2012 10:21
Letzter Beitrag: rolfk

Gehe zu: