AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Speicherleak in Multithradanwendung verhindern.
Thema durchsuchen
Ansicht
Themen-Optionen

Speicherleak in Multithradanwendung verhindern.

Ein Thema von Corpsman · begonnen am 25. Jan 2009 · letzter Beitrag vom 25. Jan 2009
 
Benutzerbild von Corpsman
Corpsman

Registriert seit: 8. Nov 2005
Ort: nähe Stuttgart
981 Beiträge
 
Delphi XE2 Professional
 
#1

Speicherleak in Multithradanwendung verhindern.

  Alt 25. Jan 2009, 10:42
Hossa,

Ich bin gerade dabei mir eine Partikel Engine zu basteln.

Richtig Cool wird das natürlich erst wenn man die Berechnung der Partikelbahnen in einen Extra Thread auslagert, dachte ich mir.

Also habe ich mal angefangen und habe natürlich nun das Berühmte paralell ausführen Problem.

Worum es genau geht.

Ich habe in meiner Anwendung nun 2 Threads.

Die Hauptanwendung diese Füttert die Partikelengine mittels

AddPartikel

Immer Fleisig mit neuen Partikeln

Und Greift mittels

Render

auf diese zu.

Die Partikelengine ihrerseits

Berechnet die Flugbahnen der Partikel und Löscht diese wenn sie Negative Y-Werte Bekommen.

Mein Problem ist nun das

Hinzufügen und Löschen aus unterschiedlichen Threads geschieht, und damit Fehler auftreten. Wie man sehen Kann Geschieht dies allerdings nur wenn ich 10000 oder Mehr Partikel auf einmal hinzufüge.

Wie man im Auskommentierten Code sehen kann habe ich bereits mittels Synchronize bzw semaphore versucht das Problem zu verhindern. Nur Leider scheint mein Ansatz falsch zu sein.

Evtl könnt ihr mir ein wenig weiterhelfen.
Angehängte Dateien
Dateityp: rar dp_572.rar (243,9 KB, 3x aufgerufen)
Uwe
My Sitewww.Corpsman.de

My marble madness clone Balanced ( ca. 70,0 mb ) aktuell ver 2.01
  Mit Zitat antworten Zitat
 


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz