Parrallelisme / Semaphores / Mutex / Section Critique

Résolu
zboonet Messages postés 6 Date d'inscription jeudi 30 novembre 2000 Statut Membre Dernière intervention 12 novembre 2008 - 1 févr. 2006 à 10:33
zboonet Messages postés 6 Date d'inscription jeudi 30 novembre 2000 Statut Membre Dernière intervention 12 novembre 2008 - 9 févr. 2006 à 14:41
Hello :-)

Bon voila .. je souhaiterai créer dans mon programme une section critique ( un truc elegant, pas la pauv' variable booléenne trop crado et le DoEvents .. ).

En C, pas de problemes, je sais faire .. mais en VB .. j'ai encore du mal a toper les prototypes des API .. :-(

donc si qqn aurait par hasard devellopé ce genre de choses en VB .. je lui serait eternellement reconnaissant de bien vouloir partager ce petit bout de code .. :-)

Merci ;-)
A voir également:

3 réponses

zboonet Messages postés 6 Date d'inscription jeudi 30 novembre 2000 Statut Membre Dernière intervention 12 novembre 2008
9 févr. 2006 à 14:41
Bon .. je me fais une reponse a moi meme .. :-) .. j'ai trouvé finalement ..

voici ce que je cherchai :

Attribute VB_Name = "mod_CriticalSection"
Option Explicit


Type LIST_ENTRY
pFlink As Long
pBlink As Long
End Type


Type RTL_CRITICAL_SECTION_DEBUG
Type As Integer
CreatorBackTraceIndex As Integer
pCriticalSection As Long
ProcessLocksList As LIST_ENTRY
EntryCount As Long
ContentionCount As Long
Spare(0 To 1) As Long
End Type


Type CRITICAL_SECTION
DebugInfo As RTL_CRITICAL_SECTION_DEBUG
LockCount As Long
RecursionCount As Long
OwningThread As Long
LockSemaphore As Long
SpinCount As Long
End Type


Declare Sub InitializeCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Declare Sub DeleteCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Declare Sub EnterCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Declare Sub LeaveCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION)
Declare Function TryEnterCriticalSection Lib "kernel32" (ByRef lpCriticalSection As CRITICAL_SECTION) as Boolean
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
1 févr. 2006 à 13:50
Si c'est les déclarations des API qu'il te manque, tu pourra les trouver dans l'API Guide téléchargeable à l'adresse suivante :
http://www.mentalis.org/agnet/apiguide.shtml

La pluspart des API sont accompagnées d'un exemple.

Ce guide n'est pas des plus récents, mais est toujours d'actualité en ce qui concerne les API Win32.

<hr size="2" width="100%">
0
zboonet Messages postés 6 Date d'inscription jeudi 30 novembre 2000 Statut Membre Dernière intervention 12 novembre 2008
1 févr. 2006 à 14:38
Ha .. merci pour le tuyau .. :-)

Helas, y pas ce que je cherche : EnterCriticalSection, InitializeCriticalSection, LeaveCriticalSection , et DeleteCriticalSection.

Beh en fait .. ce qui me manque outre cette $£%µ§ de declaration de fonctions, c'est le type de données CRITICAL_SECTION .. etc ..
0
Rejoignez-nous