在Python中创建可等待对象
我大致知道怎么用select()来处理一堆套接字,只返回那些准备好读写的套接字。现在我正在做的项目里有一个叫'用户'的类。每个'用户'对象都有自己的套接字。我想做的是把一堆用户传给select(),然后得到一个只包含那些用户的列表,这些用户的socket是准备好读写的。你有什么建议可以让我开始吗?
编辑:把switch()改成了select()。我需要更仔细地校对。
1 个回答
2
你应该让你的 User
类里面有一个 fileno(self)
方法,这个方法的作用是返回 self.thesocket.fileno()
。这样做是为了让 select
能在你自己定义的类上正常工作(在Windows上只针对套接字,在类Unix系统上可以是任意文件)。我不太明白 switch
是什么意思——我没有听说过它是Python的标准库(或者内置)的概念……?