Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Anzahl von Semaphore-Objekten bestimmen. (https://www.delphipraxis.net/30588-anzahl-von-semaphore-objekten-bestimmen.html)

mirage228 26. Sep 2004 19:17


Anzahl von Semaphore-Objekten bestimmen.
 
Hallo,

ich erstelle eine Semaphore mit CreateSemaphore und öffne sie anderer Stelle mit OpenSemaphore.

Nun kann man ja bei CreateSemaphore den Anfangs-Count und den Max-Count angeben. Nun habe ich mich gefragt, ob es denn eine Möglichkeit gibt den aktuellen Count herauszufinden.

Im MSDN bin ich nicht fündig geworden, weiss es jemand von euch?

mfG
mirage228

tommie-lie 26. Sep 2004 20:19

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Soweit ich weiß nicht, aber ich wüsste auch nicht, wozu man da praktisch brauchen sollte.

mirage228 26. Sep 2004 20:25

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Hi,

naja, schade :-(. Ich müsste das nämlich Überprüfen, da ich bestimmte Aktionen davon abhängig machen wollte.

mfG
mirage228

tommie-lie 26. Sep 2004 20:33

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Zitat:

Zitat von mirage228
naja, schade :-(. Ich müsste das nämlich Überprüfen, da ich bestimmte Aktionen davon abhängig machen wollte.

Wieso denn abhängig davon, wie groß der Count ist?
Semaphoren sollen eigentlich Zugriffe auf eine bestimmte Anzahl beschränken. Auf welche sollte eigentlich egal sein. Du legst beim Erzeugen beispielsweise fest, daß höchstens 5 Threads auf eine Datenbank zugreifen dürfen, und wenn der 6te Thread erzeugt wird und ankommt, um auf die Semaphore zu warten (WaitForsingleObject), wird der 6te halt stillgelegt und kommt erst wieder an die Reihe, wenn einer der anderen fertig ist.

DaFox 26. Sep 2004 20:36

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Hi,

mit der undokumentierten Funktion NtQuerySemaphore() sollte das unter NT möglich sein.

Gruß,
Markus

tommie-lie 26. Sep 2004 20:39

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Gibt's da auch die passende DLL dazu, die die Funktion exportiert?
Zumindest mein Delphi6 PE kennt diese Funktion nämlich noch nicht.

Edit: gefunden

DaFox 26. Sep 2004 20:43

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Zitat:

Zitat von tommie-lie
Gibt's da auch die passende DLL dazu, die die Funktion exportiert?

Zitat:

Zitat von DaFox
NtQuerySemaphore()

Zitat:

Zitat von tommie-lie
Zumindest mein Delphi6 PE kennt diese Funktion nämlich noch nicht.

Zitat:

Zitat von DaFox
...undokumentierten Funktion...

Gruß,
Markus

tommie-lie 26. Sep 2004 20:46

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Jaja, war unüberlegt, ich geb's ja zu...

DaFox 26. Sep 2004 20:48

Re: Anzahl von Semaphore-Objekten bestimmen.
 
So war's nicht gemeint, wollte es nur nicht doppelt schreiben! :wink:

Gruß,
Markus

tommie-lie 26. Sep 2004 20:51

Re: Anzahl von Semaphore-Objekten bestimmen.
 
Zitat:

Zitat von DaFox
So war's nicht gemeint

Hääte es aber ruhig sein können ;-)


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:56 Uhr.
Seite 1 von 2  1 2      

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