use Net; use Concurrency; bundle Default { class SocketServer { id : static : Int; function : Main(args : String[]) ~ Nil { server := TCPSocketServer->New(12321); if(server->Listen(5)) { while(true) { client := server->Accept(); service := Service->New(id->ToString()); service->Execute(client); id += 1; }; }; server->Close(); } } class Service from Thread { New(name : String) { Parent(name); } method : public : Run(param : Base) ~ Nil { client := param->As(TCPSocket); line := client->ReadString(); while(line->Size() > 0) { line->PrintLine(); line := client->ReadString(); }; } } }