AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Problem mit 2 Threads und CPU-Auslastung
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit 2 Threads und CPU-Auslastung

Ein Thema von treepwood · begonnen am 26. Mai 2008 · letzter Beitrag vom 28. Mai 2008
 
treepwood

Registriert seit: 26. Mai 2008
5 Beiträge
 
#3

Re: Problem mit 2 Threads und CPU-Auslastung

  Alt 27. Mai 2008, 15:14
Zitat von sirius:
Du hast schon richtig geahnt, die Threads blockieren sich gegenseitig.
Der Speichermanager stellt sicher, dass nur ein Thread gleichzeitig auf ihn zugreift. Wobei ich jetzt nicht weis, was setlength mit einem shortstring macht.

btw.: Du solltest die ThreadProc (Haenge) mal mit einem 32-bit-Parameter und als stdcall deklarieren.

Die Frage ist nur, warum blockieren sich die Threads gegenseitig ?
Jeder Thread sollte seinen eigenen Heap mit eigenem String haben.
Kann es sein, daß der Speicher von den Thread geteilt wird ?

Mit Long/Huge-String passiert das Gleiche wie bei shortstring oder Ansistring.
Jeglicher Zugriff auf den Speicher mit z.B. Pchar; getmem(P, 100);...
verursacht das selbe Problem, auch ohne SetLength

ich habe den Prozedurkopf wie folgt geändert:
procedure haenge (param_nicht_verwendet :longint); stdcall; leider bleibt das Ergebnis gleich.
  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 09:39 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz