maitretarot-devel-fr
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Rep:Re: [Maitretarot-devel-fr] le client fonctionne :)


From: philippe brochard
Subject: Re: Rep:Re: [Maitretarot-devel-fr] le client fonctionne :)
Date: 23 May 2002 18:11:28 +0200
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

"address@hidden"<address@hidden> writes:

> En gros, c'est ca.
> man select
> man poll
> 
> Moi, je suis pour select. Poll est sympa aussi mais est 
> moins portable (ca march sur solaris quand meme). select 
> est pas posix mais est super portable. pselect est posix, 
> mais c'est pas sur solaris2.6.
> Bref, je prefere select.
> 
> A moins qu'on n'utilise le read non bloquand?
> 
> 
le principe (si j'ai bien compris) de select c'est de regarder
une entree pendant n secondes et au bout de se temps de dire
s'il y a des donnees sur l'entree ou non.
=> ca permet de faire une boucle en attendant qu'il y ait des
donnees et de les traiter en fonction du canal.

Pour poll, ca me semble un peu plus compliquer (je n'y ai pas
trop regarde).


Donc, moi ca me va. A moins qu'il y est des arguments plus
convainquant pour le read non bloquant.



Philippe


> Yves
> 
> > "address@hidden"<address@hidden> 
> writes:
> > 
> > [...]
> > 
> > > > l'IRC est pas mal, mais avoir une gestion 
> centralisee 
> > > des messages (pour
> > > > par exemple discutter pendant qu'on attend un autre 
> > > joueur qui n'est pas
> > > > connecter) me semble etre une fonctionnalite 
> > > interessante.
> > > 
> > > A nouveau, y'a irc et les autres pour ca. Mais si 
> c'est 
> > > facile a implementer dans maitretarot, allons-y!
> > > 
> > Oui, enfin ce ne sera pas aussi facile a implementer 
> parce
> > qu'on a programme les fonctions read_data et write_data 
> de
> > telle sorte quelles soient bloquantes (on attend d'avoir
> > lu/ecrit toutes les données pour passer a la suite. on 
> dit
> > que c'est 'synchrone', non ?) alors que pour le chat il 
> faut
> > une communication continue ('asynchrone' ?)
> > 
> > 
> > Une solution avant d'utiliser les threads pour le 
> client pourrait
> > etre de faire un truc du genre :
> > 
> > pour les fonctions d'ecriture/lecture :
> > ---------------------------------------
> > 
> > write_data (data, canal)
> > {
> >   envoi (canal)
> > 
> >   envoi (taille des donnees)
> > 
> >   tant que (toute les donnees ne sont pas envoyer)
> >   {
> >      envoi (donnees)
> >   }
> > }
> > 
> > 
> > canal, data = read_data ()
> > {
> >   lit (canal)
> > 
> >   lit (taille des donnees)
> > 
> >   tant que (toute les donnees ne sont pas lues)
> >   {
> >      lit (donnees)
> >   }
> > }
> > 
> > 
> > pour les fonctions clients qui on besoin de lire :
> > --------------------------------------------------
> > 
> > ok = 0
> > tant que (ok == 0)
> > {
> >   canal, data = read_data ()
> > 
> >   if (canal == 1) affiche_chat (data)
> > 
> >   if (canal == 0)
> >   {
> >      donnee_a_lire = data
> >      ok = 1;
> >   }
> > }
> > 
> > (enfin, il faudra faire se genre de structure a un
> > niveau encore plus haut, parce que du 'affiche_chat'
> > au niveau lecture n'est pas trop correct.)
> > 
> > 
> > Le gros probleme c'est qu'il risque d'y avoir des 
> carambolages
> > entre les programmes qui veulent lire et ecrire en meme 
> temps...
> > (c'est pour ca qu'avec 2 sockets c'est plus facile a 
> faire,
> > deconnexion entre le chat et le protocole de jeu).
> > 
> > 
> > 
> > Philippe
> > 
> > -- 
> > ,-------------------.         ,---------------,---------
> -------------.
> > | Philippe Brochard |   ...   | address@hidden | 
> http://hocwp.free.fr |
> > `------------------(_  (. .)  `---------------'---------
> -------------'
> > -------------------ooO--(_)--Ooo------------------------
> --------------
> > 
> > _______________________________________________
> > Maitretarot-devel-fr mailing list
> > address@hidden
> > 
> http://mail.freesoftware.fsf.org/mailman/listinfo/maitreta
> rot-devel-fr
> > 
> 
> --
> homepage - http://ymettier.free.fr                   -
> gtktalog - http://www.freesoftware.fsf.org/gtktalog  -
> cardpics - http://www.freesoftware.fsf.org/cardpics/ -
> 
> --------------
> Profitez des 2 offres exceptionnelles Tiscali !
> "Internet Gratuit le Jour" et "Modem ADSL remboursé"
> Cliquez ici, http://register.tiscali.fr/forfaits_ls/
> Offres soumises à conditions.
> 
> 
> 
> _______________________________________________
> Maitretarot-devel-fr mailing list
> address@hidden
> http://mail.freesoftware.fsf.org/mailman/listinfo/maitretarot-devel-fr
> 
> 

-- 
,-------------------.         ,---------------,----------------------.
| Philippe Brochard |   ...   | address@hidden | http://hocwp.free.fr |
`------------------(_  (. .)  `---------------'----------------------'
-------------------ooO--(_)--Ooo--------------------------------------



reply via email to

[Prev in Thread] Current Thread [Next in Thread]