Einzelnen Beitrag anzeigen

Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.008 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#32

AW: Freigeben von Listen durch Threads beschleunigen

  Alt 26. Feb 2015, 18:32
aber beim Freigeben oder Ändern kann, je Gruppe, natürlich immer nur einer gleichzeitig, wenn die Speicher zufällig im selben Block liegen.
Das ist das Schöne an einer Lösung, wo man für eine konkrete Klasse noch einen Pool dazwischenschalten kann: Ich kann jedes Objekt in jeden Pool stecken, praktisch also auch ganz schnell in meinen Thread-lokalen.
Das würde Daniel aber auch nix helfen, die Instanzen gibts schon, die dann noch irgendwo in nem Pool zu verschieben, würde die Sache kaum schneller machen.

Es gibt gewisse Dinge, die kann man ebend nicht mit multithreading schneller machen (manchmal geht das sogar eher nach hinten los).
ScaleMM und Co mögen schneller sein, wenn man innerhalb mehrerer Threads Instanzen erzeugt und wieder freigibt oder mit strings hantiert (siehe Benchmarks) . Aber einmal erstellte Instanzen parallel freigeben, geht auch dort nicht schneller (eher langsamer wie auch meine Tests bestätigen).
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight

Geändert von Stevie (26. Feb 2015 um 18:38 Uhr)
  Mit Zitat antworten Zitat