python的异步网络编程_python异步网络编程怎么使socket关闭之后立即执行一段代码?...

 2023-09-11 阅读 24 评论 0

摘要:importsocketfrom_socketimportgetdefaulttimeoutclassMySocket(socket.socket):Socket网络编程、"""重写服务器端socket"""def__init__(self,*args,**kwargs):super().__init__(*args,**kwargs)#self.level标志socket类型0:普通服务器socket&

import socket

from _socket import getdefaulttimeout

class MySocket(socket.socket):

Socket网络编程、"""重写服务器端socket"""

def __init__(self, *args, **kwargs):

super().__init__(*args, **kwargs)

# self.level 标志socket类型 0:普通服务器socket;1:accept得到的socket

python socket编程。self.level = 0  # 普通socket

def close(self):

super().close()

if self.level:

python高级网络编程。print("关闭服务器端accept得到的socket时要做的工作")

else:

print("关闭服务器普通socket时要做的工作")

def __del__(self):

python3网络编程,super().__del__()

if self.level:

print("删除服务器端accept得到的socket时要做的工作")

else:

Python socket?print("删除服务器普通socket时要做的工作")

def accept(self):

"""重写accept使其得到自己实现的socket"""

fd, addr = self._accept()

Python 异步?type = self.type & ~globals().get("SOCK_NONBLOCK", 0)

# 指向自己的socket类

sock = MySocket(self.family, type, self.proto, fileno=fd)

# self.level 标志socket类型 0:普通服务器socket;1:accept得到的socket

python网络编程第三版,sock.level = 1

if getdefaulttimeout() is None and self.gettimeout():

sock.setblocking(True)

return sock, addr

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/48601.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息