Einzelnen Beitrag anzeigen

Dax
(Gast)

n/a Beiträge
 
#2

Re: TRhread-Parameter auf dem Stack übergeben

  Alt 12. Mär 2008, 09:00
Das wird so nicht gehen. Du musst dafür sorgen, dass die Parameter auf dem Stack nicht überschrieben werden, während der Thread darauf zugreift - was im schlimmsten Fall über die gesamte Threadlaufzeit geschieht. Für diese Zeit musst du auf den Thread warten, da ein Return aus der aktuellen Methode dafür Sorgen würde, dass dein Parameter Freiwild wird und vom nächsten Aufruf im erzeugenden Thread höchstwahrscheinlich gründlich zerlegt wird. Was natürlich bedeuten würde, dass Threads in dem Fall eher.. naja, sinnlos sind.

Aber zum eigentlich Thema: den Speicher freigeben muss der Aufrufer, wenn es der Thread nicht tut. Da du den Speicher über den Stack holst, musst du ihn *garnicht* freigeben, du darfst es sogar nicht mal, nicht im Thread und nirgendwo sonst, das macht nämlich deine Methode automatisch beim Return.
  Mit Zitat antworten Zitat