diff options
author | fcolin | 2006-04-19 08:28:14 +0000 |
---|---|---|
committer | fcolin | 2006-04-19 08:28:14 +0000 |
commit | 6bf117656574521545694a1a4e5169755077631e (patch) | |
tree | f18c164c217e2279781a3af9851b644da97dfba1 /src/ivyloop.h | |
parent | ca9eddefaec96a20b88b9aba25a9384037317c91 (diff) | |
download | ivy-c-6bf117656574521545694a1a4e5169755077631e.zip ivy-c-6bf117656574521545694a1a4e5169755077631e.tar.gz ivy-c-6bf117656574521545694a1a4e5169755077631e.tar.bz2 ivy-c-6bf117656574521545694a1a4e5169755077631e.tar.xz |
correction de probleme potentiel en multithread ( Ada rejeu )
ajout d'un warning en cas de client bloquant si la varaiable d'env IVY_DEBUG_SEND est positionne
Diffstat (limited to 'src/ivyloop.h')
-rw-r--r-- | src/ivyloop.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/src/ivyloop.h b/src/ivyloop.h index c4af6eb..0696d40 100644 --- a/src/ivyloop.h +++ b/src/ivyloop.h @@ -36,9 +36,23 @@ extern "C" { #define HANDLE int #endif - - -extern void IvyMainLoop(void(*hook)(void) ); +/* +Boucle principale d'IVY baseé sur un select +les fonctions hook et unhook encradre le select +de la maniere suivante: + + BeforeSelect est appeler avant l'appel system select + AfterSelect est appeler avent l'appel system select + ces function peuvent utilisées pour depose un verrou dans le cas + d'utilisation de la mainloop Ivy dans une thread separe + + BeforeSelect ==> on libere l'acces avant la mise en attente sur le select + AfterSelect == > on verrouille l'acces en sortie du select + + !!!! Attention donc l'appel des callbacks ivy se fait avec l'acces verrouille ! +*/ + +extern void IvyMainLoop(void(*BeforeSelect)(void),void(*AfterSelect)(void) ); extern void IvyChannelInit(void); |