我目前正在重新编写一些使用 pythonselect.select()
方法的代码,但这些只会返回我必须去的套接字对象,并手动将该套接字与放在__init__
. 其伪代码基本上是[classobject for classobject in classList if SocketFromSelection == class.socketobject][0]
(我几乎在使用)。
我在 python 文档中发现select.select()
,“你也可以自己定义一个包装类,只要它有一个适当的 fileno() 方法(它真的返回一个文件描述符,而不仅仅是一个随机整数)。”
我的问题是,我将如何在一个类中附加一个 fileno() 方法,以便我可以将这些类的序列传递给select.select()
它,以便它返回类而不仅仅是套接字?另外,这会在Windows上运行吗?如果没有,是否有更好的方法将套接字与类列表中的类中的套接字匹配?