摘要:
一、TCP协议简介 1.1、什么是TCP协议 TCP 协议则是建立在 IP 协议之上的。TCP 协议负责在两台计算机之间建立可靠连接,保证数据包按顺序达到。TCP 协议会通过 3 次握手建立可靠连接。然后需要对每个 IP 包进行编号,确保对方按顺序收到,如果包丢了,就自动重发。一个 TCP 报文来了 阅读全文
摘要:
一、什么网络通信 计算机网络把分布在不同地理区域的计算机与专门的外部设备用通信线路互联成一个规模大、功能强的网络系统,从而使众多的计算机可以方便的互相传递信息、共享硬件、软件、数据信息等资源。网络编程直接或间接地通过网络协议与其它计算机实现数据交换,进行通信。 OSI参考模型 TCP/IP参考模型 阅读全文
摘要:
一、生产者消费者模型 假如有两个进程 A 和 B,它们共享一个 固定大小的缓冲区 ,A 进程产生数据放入缓冲区,B 进程从缓冲区中取出数据进行计算,那么这里其实就是一个生产者和消费者的模式,A 相当于生产者,B 相当于消费者。 在多线程开发中,如果生产者生产数据的速度很快,而消费者消费数据的速度很慢 阅读全文
摘要:
一、什么是多任务 如果一个操作系统上同时运行了多个程序,那么称这个操作系统就是 多任务的操作系统,例如:Windows、Mac、Android、IOS、Harmony 等。如果是一个程序,它可以同时执行多个事情,那么就称为 多任务的程序。 一个 CPU 默认可以执行一个程序,如果想要多个程序一起执行 阅读全文
摘要:
一、什么是协程 从 Python 3.4 开始,Python 加入了协程的概念,使用 asyncio 模块实现协程。但这个版本的协程还是以生成器对象为基础。 Python 3.5 中增加了 async、await 关键字,使协程的实现更加方便。 协程(Coroutine),又称 微线程,是一种运行运 阅读全文
摘要:
一、什么是进程 进程(process)则是一个执行中的程序。每个进程都拥有自己的地址空间、内存、数据栈以及其它用于跟踪执行的辅助数据。操作系统管理其上所有进程的执行,并为这些进程合理分配时间。进程也可以通过派生新的进程来执行其它任务,不过因为每个新进程也都拥有自己的内存和数据栈等,所以只能采用进程间 阅读全文
摘要:
一、什么是线程 线程(thread)它们是同一个进程下执行的,并共享相同的下上文。线程包括开始、执行顺序和结束三部分。它有一个指令指针,用于记录当前运行的上下文。当其它线程运行时,它可以被抢占(中断)和临时挂起(也称为睡眠)—— 这种做法叫做让步(yielding)。 当一个程序运行时,默认有一个线 阅读全文
摘要:
一、什么是描述符 如果一个类中有如下 3 个方法中的任意一个,那么这个类创建的对象,可以称为 描述符对象。 object.__get__(self, instance, owner=None) object.__set__(self, instance, value) object.__delete 阅读全文
摘要:
一、什么是元类 在 Python 中,一切皆为对象,即类也是一个对象。type 是内置的元类。我们用 class 关键字定义的所有的类以及内置的类都是由元类 type(内置的元类) 实例化产生的。 class Person: def __init__(self, name, age): self.n 阅读全文
摘要:
一、什么是上下文管理器 任何实现 __enter__() 和 __exit__() 方法的对象都可称为 上下文管理器。上下文管理器对象可以使用 with 关键字。这样说的话,文件(file)对象也实现了上下文管理器。 __enter__() 方法返回资源对象,这里就是你将要打开的那个文件对象,__e 阅读全文