Age | Commit message (Collapse) | Author |
|
° bindRegexp : 3eme argument optionnel : si sa valeur est 0 ou undef, fonctionnement inchangé,
si sa valeur est 1 le premier argument fourni à la callback est une liste
[nom, adresse, n° port] au lieu juste du nom de l'agent qui envoie le message
° la callback statusFunc : est appelée avec 7 arguments au lieu de 6 : arg 1 à 5 inchangé,
arg 6 $host_or_regexp changé par $host, $regexp, si il n'y a pas de regexp $regexp vaut undef
|
|
|
|
|
|
non blocking
mode was requested
° Optimisation : remove buffer copy when it's possible
ivyprobe.pl : ° use non blocking mode,
° fix bug with the use of gnu readline : now editing previous entries is possible
° add -regexpFile regexpfile option : ivyprobe.pl will bind qll the regexp
which are in the file given in argument.
° add -filter class1,classe2,...,classeN : add the possibility to filter messages
for test/debug purpose.
testCongestionTk.pl : simple demo which demonstrate non blocking mode with Tk
|
|
non blocking
mode was requested
° Optimisation : remove buffer copy when it's possible
|
|
une modification du message UDP Hello afin d'y intégrer un
identificateur unique d'application et le nom de l'application
Ceci afin de corriger les problèmes de connexion multiples en cas
d'utilisation de plusieurs réseau ( il arrive que l'on reçoive plusieurs
fois le paquet ) L'identifiant permettra d'identifier à coup sur
l'application et donc de rejeter les paquets multiples
Le protocole reste compatible avec les anciennes versions d'ivy.
2/ notification des congestions :
on spécifier une callback qui sera appelée si un client ne consomme pas ses
messages assez vite : la callback n'est appelée que lors d'un changement
d'état : congestion ou decongestion.
my $bus = Ivy->new (-slowAgentFunc=> \&congestionFunc )
sub congestionFunc ($$$)
{
my ($name, $addr, $state) = @_;
if ($state == 1) {
printf ("$name [$addr] %s will stop at N=%d\n", $state ? "CONGESTION" :
"OK", $numberOfSentMsg+100);
$numberOfSentMsgWhenCongestion = $numberOfSentMsg;
} else {
printf ("$name [$addr] %s\n", $state ? "CONGESTION" : "OK");
}
}
3/ possibilité de rendre Ivy non bloquant : si un client ne consomme pas
ses messages assez vite les messages seront accumulés en local et le
sendMsgs non bloquant rendra la main.
my $bus = Ivy->new (-blockOnSlowAgent => 0)
4/ optimisation en terme de vitesse et de conso mémoire.
|
|
|
|
|
|
|
|
|
|
instead of 0.
---------------------------------------------------------------
|
|
|
|
|
|
|
|
Now build packages that install directly in vendor_perl/
|
|
|
|
|
|
|
|
the CPAN world-wide used Time::HiRes module
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
when an agent is running on an unknown host, we are now using the ip
address in replacement of the hostname in the callback associated to
the -statusFunc attribute.
|
|
|
|
corrigés en version 4.11)
|
|
|
|
|
|
|
|
|
|
-t for time stamping
and
-n for modifying the default name. This will be similar the java probe implementation.
|
|
|
|
|
|
sinon Segmentation fault
- Amélioration mineures des commentaires
|
|
|
|
|
|
|
|
|
|
ajout de l'option -delay
|
|
changement de version de Time::Gettimeofday
|
|
as for example 'zaza (' or '*'
- ivy-perl is now tolerant to illformed regular expressions subscribed
by other agent on the bus
- ivy-perl warn you when a message containing a \n is send.
This is because the \n is currently the message separator
- with the statusfunc, it is now possible to know every regexp
subscribed / unsubscribed by other agents
- the ivyprobe.pl application now displays all subscriptions /
unsubscriptions. It also allows unsubscription
- when a die message is issued with an unknown agentName,
Ivy warn you correctly
- man pages enhancements
|
|
|
|
|
|
Ivy.pm permet de connaitres les abonnements/desabonnements
ivyprobe.pl permet de suivre tous les abonnements / dé-abonnements
|
|
|
|
|