projman/hlp/fr/tcl/puts.htm

26 lines
3.7 KiB
HTML
Raw Normal View History

2015-10-19 13:27:31 +03:00
<HTML><HEAD>
<BASEFONT FACE="Times New Roman" SIZE="2" COLOR="#000000">
</HEAD>
<BODY>
<div><H3><b>puts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Commandes Internes Tcl</b></H3></div>
<HR ALIGN="center">
<div><b>NOM</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">puts - Ecrit dans un canal
</div><br>
<div><b>SYNTAXE</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><b>puts </b>?<b>-nonewline</b>? ?<i>channelId</i>? <i>string</i>
</div><br>
<div><b>DESCRIPTION</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;">Ecrit les caract<63>res donn<6E>s par <i>string</i> dans le canal donn<6E> par <i>channelId</i>. <i>ChannelId</i> doit <20>tre un identificateur de canal tel que celui renvoy<6F> par un pr<70>c<EFBFBD>dent appel de <A HREF="142.htm"><b>open</b></A> ou <A HREF="162.htm"><b>socket</b></A>. It doit avoir <20>t<EFBFBD> ouvert pour une sortie. Si aucun <i>channelId</i> n'est sp<73>cifi<66> alors il est par defaut de <b>stdout</b>. <b>Puts</b> normalement emet un caract<63>re newline apr<70>s <i>string</i>, mais cette fonctionnalit<69> peut <20>tre supprim<69> en specifiant le switch<b> -</b> <b>nonewline</b>. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Les caract<63>res newline dans la sortie sont traduits par <b>puts</b> en s<>quences fin de ligne sp<73>cifique <20> la plate-forme en accord avec la valeur courante de l'option <b>-translation</b> pour le canal (par exemple, sur les PCs les saut de lignes sont normalement remplac<61> avec carriage-return-linefeed s<>quences;&nbsp; sur Macintosh les saut de lignes sont normalement remplac<61> avec carriage- return). Voir la page de manuel <A HREF="109.htm"><b>fconfigure</b></A> pour une discussion sur la mani<6E>re dans laquelle <A HREF="109.htm"><b>fconfigure</b></A> modifie la sortie. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Tcl met la sortie en tampon en interne, donc les caract<63>res <20>crits avec <b>puts</b> peuvent ne pas apparaitre imm<6D>diatement sur le fichier ou p<>riph<70>rique de sortie;&nbsp; Tcl retarde normalement la sortie jusqu'a ce que le tampon soit plein ou le canal ferm<72>. Vous pouvez forcer la sortie <20> apparaitre imm<6D>diatement avec la commande<A HREF="114.htm"><b> flush</b></A>. </div>
<div ALIGN="LEFT" style="margin-left: 51px;">Quand le tampon de sortie est plein, la commande <b>puts</b> bloquera&nbsp; normalement jusqu'a ce que toutes les donn<6E>es en tampon aient <20>t<EFBFBD> accept<70>es pour sortie par le syst<73>me d'exploitation. Si <i>channelId</i> est en mode non bloquant alors la commande <b>puts</b> ne bloquera pas m<>me si le syst<73>me d'exploitation ne peut pas accepter&nbsp; les donn<6E>es. Par contre, Tcl continue <20> mettre les donn<6E>es en tampon et les <20>crit en arri<72>re-plan aussi vite que le sous-jacent fichier ou p<>riph<70>rique peut les accepter. L'application doit utiliser la boucle d'<27>v<EFBFBD>nement Tcl pour que la sortie non bloquante fonctionne; autrement Tcl ne voit jamais que le fichier ou le p<>riph<70>rique est pr<70>t <20> sortir plus de donn<6E>es. Il est possible pour une arbitrairement large quantit<69> de donn<6E>es d'<27>tre en tampon pour un canal en mode non bloquant, ce qui peut consommer une large quantit<69> de m<>moire. Pour <20>viter de gaspiller la m<>moire, les I/O nonbloquantes doivent normalement <20>tre utilis<69>es d'une fa<66>on pilot<6F>e par <20>v<EFBFBD>nement avec la commande <A HREF="112.htm"><b>fileevent</b></A> (n'appellez pas <b>puts</b> <20> moins que vous ayez recemment notifi<66> via un <20>v<EFBFBD>nement fichier que le canal est pr<70>t <20> afficher plus de donn<6E>es).
</div><br>
<div><b>VOIR EGALEMENT</b></div><br>
<div ALIGN="LEFT" style="margin-left: 51px;"><A HREF="112.htm">fileevent</A>(n)</div><br>
<div>Derni<EFBFBD>re r<>vision: 7.5</div>
<br>
<br><div ALIGN="CENTER"><A HREF="index.htm"><b>Index</b></A>&nbsp;&nbsp;<A HREF="147.htm"><b>Pr<EFBFBD>c<EFBFBD>dent</b></A>&nbsp;&nbsp;<A HREF="149.htm"><b>Suivant</b></A></div>
</BODY></HTML>