Python论坛  - 讨论区

标题:Re: [python-chinese] 使用NIO技术建立一个面向多个Client的服务器

2005年08月20日 星期六 18:02

Wanna Fly horizon.w at gmail.com
Sat Aug 20 18:02:09 HKT 2005

为什么我一执行就死那里了呢?用的是IDLE

On 8/19/05, sunyong <sunqingmingzhi at 163.com> wrote:
> import select
> """
> 文件名:myserver.py
> 使用NIO技术建立一个面向多个Client的服务器
> 作者:孙永
> 日期:2005-08-18
> 测试方法:
>        1 运行该程序
>        2 telnet localhost 2046(可以执行多个telnet)
>        3 如果要终止服务,使用ctrl+C
>        这是我昨天晚上学习的结果,呵呵
> """
> 
> s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> s.bind(("localhost", 2046))
> s.listen(1)
> ls=[s]
> le=[]
> try:
>    while(1):
>                #使用select方法监听socket事件
>        ft=select.select(ls,[],le)
>        for fd in ft[0]:
>            if (s == fd):
>                                #如果是accept事件
>                stemp,addr=s.accept()
>                ls.append(stemp)
>                print addr,"has been connected"
>            else:
>                                #如果是read事件
>                data=fd.recv(1024)
>                if data=="q" or data=="":
>                                        #接收到q断开连接
>                    ls.remove(fd)
>                    fd.close()
>                    continue
>                print "data=",data
> finally:
>    s.close()
> 
> 
> 
> _______________________________________________
> python-chinese list
> python-chinese at lists.python.cn
> http://python.cn/mailman/listinfo/python-chinese
> 
> 
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年08月21日 星期日 14:00

梅劲松  stephen.cn at gmail.com
Sun Aug 21 14:00:44 HKT 2005

调试socket程序建议不在idle中,而应该在控制台下.

在 05-8-20,Wanna Fly<horizon.w at gmail.com> 写道:
> 为什么我一执行就死那里了呢?用的是IDLE
> 
> On 8/19/05, sunyong <sunqingmingzhi at 163.com> wrote:
> > import select
> > """
> > 文件名:myserver.py
> > 使用NIO技术建立一个面向多个Client的服务器
> > 作者:孙永
> > 日期:2005-08-18
> > 测试方法:
> >        1 运行该程序
> >        2 telnet localhost 2046(可以执行多个telnet)
> >        3 如果要终止服务,使用ctrl+C
> >        这是我昨天晚上学习的结果,呵呵
> > """
> >
> > s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> > s.bind(("localhost", 2046))
> > s.listen(1)
> > ls=[s]
> > le=[]
> > try:
> >    while(1):
> >                #使用select方法监听socket事件
> >        ft=select.select(ls,[],le)
> >        for fd in ft[0]:
> >            if (s == fd):
> >                                #如果是accept事件
> >                stemp,addr=s.accept()
> >                ls.append(stemp)
> >                print addr,"has been connected"
> >            else:
> >                                #如果是read事件
> >                data=fd.recv(1024)
> >                if data=="q" or data=="":
> >                                        #接收到q断开连接
> >                    ls.remove(fd)
> >                    fd.close()
> >                    continue
> >                print "data=",data
> > finally:
> >    s.close()
> >
> >
> >
> > _______________________________________________
> > python-chinese list
> > python-chinese at lists.python.cn
> > http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> 
> _______________________________________________
> python-chinese list
> python-chinese at lists.python.cn
> http://python.cn/mailman/listinfo/python-chinese
> 
> 
> 


-- 
梅劲松

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

2005年08月22日 星期一 10:06

Wanna Fly horizon.w at gmail.com
Mon Aug 22 10:06:26 HKT 2005

是说些好.py后从cmd中调用?

On 8/21/05, 梅劲松 <stephen.cn at gmail.com> wrote:
> 调试socket程序建议不在idle中,而应该在控制台下.
> 
> 在 05-8-20,Wanna Fly<horizon.w at gmail.com> 写道:
> > 为什么我一执行就死那里了呢?用的是IDLE
> >
> > On 8/19/05, sunyong <sunqingmingzhi at 163.com> wrote:
> > > import select
> > > """
> > > 文件名:myserver.py
> > > 使用NIO技术建立一个面向多个Client的服务器
> > > 作者:孙永
> > > 日期:2005-08-18
> > > 测试方法:
> > >        1 运行该程序
> > >        2 telnet localhost 2046(可以执行多个telnet)
> > >        3 如果要终止服务,使用ctrl+C
> > >        这是我昨天晚上学习的结果,呵呵
> > > """
> > >
> > > s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
> > > s.bind(("localhost", 2046))
> > > s.listen(1)
> > > ls=[s]
> > > le=[]
> > > try:
> > >    while(1):
> > >                #使用select方法监听socket事件
> > >        ft=select.select(ls,[],le)
> > >        for fd in ft[0]:
> > >            if (s == fd):
> > >                                #如果是accept事件
> > >                stemp,addr=s.accept()
> > >                ls.append(stemp)
> > >                print addr,"has been connected"
> > >            else:
> > >                                #如果是read事件
> > >                data=fd.recv(1024)
> > >                if data=="q" or data=="":
> > >                                        #接收到q断开连接
> > >                    ls.remove(fd)
> > >                    fd.close()
> > >                    continue
> > >                print "data=",data
> > > finally:
> > >    s.close()
> > >
> > >
> > >
> > > _______________________________________________
> > > python-chinese list
> > > python-chinese at lists.python.cn
> > > http://python.cn/mailman/listinfo/python-chinese
> > >
> > >
> > >
> >
> > _______________________________________________
> > python-chinese list
> > python-chinese at lists.python.cn
> > http://python.cn/mailman/listinfo/python-chinese
> >
> >
> >
> 
> 
> --
> 梅劲松
> 
> _______________________________________________
> python-chinese list
> python-chinese at lists.python.cn
> http://python.cn/mailman/listinfo/python-chinese
> 
> 
>

[导入自Mailman归档:http://www.zeuux.org/pipermail/zeuux-python]

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2025

    京ICP备05028076号