AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi Hohe CPU auslastung bei 64Bit Anwendung
Thema durchsuchen
Ansicht
Themen-Optionen

Hohe CPU auslastung bei 64Bit Anwendung

Ein Thema von EWeiss · begonnen am 24. Aug 2018 · letzter Beitrag vom 24. Aug 2018
 
EWeiss
(Gast)

n/a Beiträge
 
#5

AW: Hohe CPU auslastung bei 64Bit Anwendnung

  Alt 24. Aug 2018, 03:51
[...] mehr gibt es da nicht zu sagen.
Doch, z.B. was das Programm tut. Und welche Versuche du bereits unternommen hast, dem auf die Spur zu kommen, z.B. Teile des Programms deaktivieren, Code auskommentieren usw. Oder im Process Explorer oder Process Hacker nachschauen, welche Funktion in welcher DLL genau die Last verursacht. Oder den Process Monitor mitschreiben lassen, welche Aktionen dein Programm macht. All das gibt Hinweise auf die Ursache.

Grüße
Dalai
Ich weis wo die Position ist an der die Auslastung auftritt.. ABER nicht mit der 32BIT.
Und das ist was mich stört ich kann es nicht beheben.

Hier ist der Code!
Delphi-Quellcode:
      if (ObjItem.angle <> 0) then
      begin
        GdipSetInterpolationMode(graphics, ObjItem.quality);

        GdipRotateWorldTransform(graphics, ObjItem.angle + 180, MatrixOrderAppend); //<<<< hier
        GdipTranslateWorldTransform(graphics, xD + (wD div 2), yD + (hD div 2), MatrixOrderAppend); //<<<<< und hier

        GdipDrawImageRectRectI(graphics, img, wD div 2, hD div 2, -wD, -hD, xS, yS, wS, hS, 2, imgAttr,
          ImgAbort, nil);
      end else
      begin
        GdipSetInterpolationMode(graphics, ObjItem.quality);
        GdipDrawImageRectRectI(graphics, img, PosX, PosY, wD, hD, xS, yS, wS, hS, 2, imgAttr, ImgAbort, nil);
      end;
Aber was nutzt es denn der gleiche code unter 32BIT verursacht 0% Auslastung (also insgesamt vom kompletten Programm) und 64Bit 25%

Die Funktionen dazu
Delphi-Quellcode:
  GdipTranslateWorldTransform: function(Graphics: LONG_PTR; dx: Single; dy: Single; order: GpMatrixOrder): GPSTATUS; stdcall;
  GdipRotateWorldTransform: function(Graphics: LONG_PTR; angle: Single; order: GpMatrixOrder): GPSTATUS; stdcall;
gruss

Geändert von EWeiss (24. Aug 2018 um 03:54 Uhr)
 
 


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 15:28 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