本文整理汇总了Python中socketserver.TCPServer.server_bind方法的典型用法代码示例。如果您正苦于以下问题:Python TCPServer.server_bind方法的具体用法?Python TCPServer.server_bind怎么用?Python TCPServer.server_bind使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类socketserver.TCPServer
的用法示例。
在下文中一共展示了TCPServer.server_bind方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: server_bind
# 需要导入模块: from socketserver import TCPServer [as 别名]
# 或者: from socketserver.TCPServer import server_bind [as 别名]
def server_bind(self):
"""
Override server_bind to store the server name, even in IronPython.
See https://ironpython.codeplex.com/workitem/29477
"""
TCPServer.server_bind(self)
host, port = self.socket.getsockname()[:2]
self.server_port = port
try:
self.server_name = socket.getfqdn(host)
except ValueError:
# Use the local host name in case of error, like CPython does
self.server_name = socket.gethostname()
示例2: TCPServer
# 需要导入模块: from socketserver import TCPServer [as 别名]
# 或者: from socketserver.TCPServer import server_bind [as 别名]
NWORKERS = 16
serv = TCPServer(('', 20000), EchoHandler)
for n in range(NWORKERS):
t = Thread(target=serv.serve_forever)
t.daemon = True
t.start()
serv.serve_forever()
# 一 般 来 讲, 一 个 TCPServer 在 实 例 化 的 时 候 会 绑 定 并 激 活 相 应 的 socket
# 。不过,有时候你想通过设置某些选项去调整底下的 socket‘ ,可以设置参数
# bind and activate=False 。如下:
if __name__ == '__main__':
serv = TCPServer(('', 20000), EchoHandler, bind_and_activate=False)
# Set up various socket options
serv.socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, True)
# Bind and activate
serv.server_bind()
serv.server_activate()
serv.serve_forever()
# 上面的 socket 选项是一个非常普遍的配置项,它允许服务器重新绑定一个之前使
# 用过的端口号。由于要被经常使用到,它被放置到类变量中,可以直接在 TCPServer
# 上面设置。在实例化服务器的时候去设置它的值,如下所示:
if __name__ == '__main__':
TCPServer.allow_reuse_address = True
serv = TCPServer(('', 20000), EchoHandler)
serv.serve_forever()
# 在上面示例中,我们演示了两种不同的处理器基类(BaseRequestHandler 和
# StreamRequestHandler )。 StreamRequestHandler 更加灵活点,能通过设置其他
# 的类变量来支持一些新的特性。比如
import socket