Go : un serveur TCP

November 15th, 2009

Dans la catégorie je fais mumuse avec Go : je fais un serveur TCP qui répond invariablement "Hello, World !" à tous les clients qui se connectent.

C:
  1. package main
  2.  
  3. import (
  4.     "fmt";
  5.     "net";
  6.     "strings";
  7. );
  8.  
  9. func handler(c *net.TCPConn) {
  10.     c.Write(strings.Bytes("Hello, World !\n"));
  11.     c.Close();
  12. }
  13.  
  14. func main() {
  15.     addr, err := net.ResolveTCPAddr("127.0.0.1:5896");
  16.     l, err := net.ListenTCP("tcp4", addr);
  17.  
  18.     if l == nil {
  19.         fmt.Println("Could not listen : ", err);
  20.     }
  21.  
  22.     for {
  23.         a, err := l.AcceptTCP();
  24.         if a == nil {
  25.             fmt.Println("Could not accept : ", err);
  26.         }
  27.         go handler(a);
  28.     }
  29. }

Entry Filed under: Go

Leave a Comment

hidden

Some HTML allowed:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Subscribe to the comments via RSS Feed


Calendar

September 2010
M T W T F S S
« Jun    
 12345
6789101112
13141516171819
20212223242526
27282930  

Most Recent Posts

Wikipedia Affiliate Button