Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Rausfinden, wie viele threads die eigene anwendung hat (https://www.delphipraxis.net/14559-rausfinden-wie-viele-threads-die-eigene-anwendung-hat.html)

Meflin 11. Jan 2004 14:19


Rausfinden, wie viele threads die eigene anwendung hat
 
wie ist das möglich?

*MFG*

Luckie 11. Jan 2004 14:27

Re: Rausfinden, wie viele threads die eigene anwendung hat
 
Beim Erstellen mitzählen? Oder so:
Delphi-Quellcode:
uses tlhelp32;

function GetThreadCount(ProcID: Cardinal): integer;
var
  pe32: TProcessEntry32;
  SnapShot: THandle;
  NumThreads: Cardinal;
begin
  NumThreads := 0;
  SnapShot := CreateToolHelp32SnapShot(TH32CS_SNAPPROCESS, ProcID);
  if SnapShot <> INVALID_HANDLE_VALUE then
  try
    pe32.dwSize := SizeOf(ProcessEntry32);
    if Process32First(SnapShot, pe32) then
      NumThreads := pe32.cntThreads;
  finally
    CloseHandle(SnapShot);
  end;
  result := NumThreads;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  ShowMessage(IntToStr(GetThreadCount(0))); // 0: current process
end;

Meflin 11. Jan 2004 14:38

Re: Rausfinden, wie viele threads die eigene anwendung hat
 
beim erstellen mitzählen hilft nix, da die sich ja wieder von selbst beenden!

thx!

Luckie 11. Jan 2004 14:46

Re: Rausfinden, wie viele threads die eigene anwendung hat
 
Dann dekremntier den Counter wieder wenn sich der Thread beendet. ;)

Meflin 11. Jan 2004 15:06

Re: Rausfinden, wie viele threads die eigene anwendung hat
 
gute idde, wär ich etz irgendwie net draufkommen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:36 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