| IPC :: pubsub IPC :: PUBSUB EST PERL Module pour les chaînes de publication / Abonnez-vous. |
Télécharger maintenant |
IPC :: pubsub Classement & Résumé
- Licence:
- MIT/X Consortium Lic...
- Nom de l'éditeur:
- Audrey Tang
- Site Internet de l'éditeur:
- http://search.cpan.org/~adamk/Module-Install-0.68/lib/Module/Install/PAR.pm
IPC :: pubsub Mots clés
IPC :: pubsub La description
IPC :: PUBSUB est le module PERL pour les chaînes de publication / abonnement de presse interprocesses. IPC :: PUBSUB EST PERL Module de Publish / Subscribe Channels.Synopsis # Un nouveau bus de message avec le DBM :: Support profond # (Autres backends possibles incluent Memcached et PlayHash) My $ bus = IPC :: pubsub-> nouveau (dbm_deep => '/tmp/pubsub.db'); # Une chaîne est une chaîne arbitraire ma chaîne $ canal = '# perl6'; # Enregistrer un nouvel éditeur (vous pouvez publier plusieurs chaînes) My $ PUB = $ bus-> new_publisher ("# perl6", "#moose"); # Publier un message (peut être un objet complexe) à ces canaux $ PUB-> MSG ("Ceci est un message"); # Enregistrer un nouvel abonné (vous pouvez vous abonner à plusieurs canaux) My $ SUB = $ bus-> new_subscriber ("# orose"); # Publier un objet aux canaux $ $ pub-> msg ("Voici un autre message"); # Définissez tous les messages suivants de cet éditeur pour expirer en 30 secondes $ PUB-> Expiration (30); $ pub-> msg ("Ce message disparaîtra en 30 secondes"); # Simple get: retourne les messages envoyés depuis la précédente get, # mais uniquement pour la première chaîne. mes @msgs = $ sous-> obtenir; # Simple get, avec une clé de canal explicite (doit être parmi celles # il a initialement souscrit à) mon @moose_msgs = $ sous-> obtenir ("# orose"); # Complexe GET: renvoie une référence de hachage à partir de canaux au tableau # Références de . mon $ hash_ref = $ sous-> get_all; # Modification de la liste des canaux Nous nous abonnons à $ sous-> S'abonner ("Certains-autres canaux"); $ sub-> désabonner («un autre canal»); # Changement de la liste des canaux que nous publions vers $ PUB-> Publier ("Certains autres canaux"); $ pub-> non publié («un autre canal»); # Inscription et vérification si nous sommes dans une chaîne mon @sub_channel = $ sub-> canaux; mon @pub_channel = $ pub-> canaux; Imprimer "SUB est dans #MOOSE" Si $ SUB-> CANAUX -> {'# Moose'}; Imprimer "PUB est dans #MOOSE" SI $ PUB-> CHANNAUX -> {'# Moose'}; # API de manipulation de cache brute (non conseillée; utiliser -> modifier à la place) $ bus-> verrouillage ('canal'); $ bus-> déverrouiller ('canal'); mon @timed_msgs = $ bus-> récupération ('Key1', 'Key2', 'Key3'); $ bus-> stocker ('clé', «valeur», heure, 30); # Mise à jour atomique du contenu du cache; $ _ est stocké sur la # fin du rappel. mon $ rv = $ bus-> modifier ('touche' => sous {Supprimer $ _-> {foo}}); # Sténographie pour $ bus -> Modifier ('Key' => Sub {$ _ = 'Val'}); $ bus-> Modifier ('Key' => 'Val'); # Sténographe pour $ bus-> modifier ('touche' => sous {$ _}); $ bus-> Modifier ('Key'); ce module fournit une API simple pour la publication de messages aux canaux et de les souscrire à eux. Quand un message est publié sur une chaîne, tous les abonnés actuellement dans ce canal l'obtiendront sur leur prochain get ou get_all call.compemment, il offre trois backens: dbm_deep pour stockage sur disque, memcached pour éventuellement stockage multi-hôte et plaineHash pour un stockage à process unique.Veuillez voir les tests de T / pour cette distribution, ainsi que "Synopsis "ci-dessus, pour certains exemples d'utilisation; La documentation détaillée n'est pas encore disponible. Exigences: · Perl
IPC :: pubsub Logiciels associés