摘要:
引言 线程 创建普通多线程 线程锁 互斥锁 信号量 事件 条件锁 定时器 全局解释器锁 队列 Queue:先进先出队列 LifoQueue:后进先出队列 PriorityQueue:优先级队列 deque:双向队列 生产者消费者模型 线程池 进程 协程 引言 在学习过socket和socketser 阅读全文
摘要:
epoll IO多路复用是一个系统层面的概念,让我们先搞清楚为什么使用IO多路复用: 由于进程的执行过程是线性的(也就是顺序执行),当我们调用低速系统I/O(read,write,accept等等),进程可能阻塞,此时进程就阻塞在这个调用上,不能执行其他操作.阻塞很正常. 接下来考虑这么一个问题:一 阅读全文
摘要:
在写作用域前,先来了解下局部变量和全局变量。理解局部变量和全局变量后,作用域的概念就很好理解了。 局部变量:局部变量只能在局部访问到,当超过其作用域时,变失去作用。 全局变量:无论在任何作用域都可以使用。当前作用域有相同变量名的局部变量时,局部变量生效。 (忘记准确定义了,忘掉他吧) 1、Pytho 阅读全文
摘要:
上节地址:Python网络编程:socket 一、send和sendall区别 send,sendall ret = send('safagsgdsegsdgew') #send 发送完成后会有一个返回值,告知发送了多少,并不一定会把数据全部发送过去。 sendall:内部调用send,将数据全部发 阅读全文
摘要:
在学习socket之前,我们先复习下相关的网络知识。 OSI七层模型:应用层,表示层,会话层,传输层,网络层,数据链路层,物理层。OSI七层模型是由国际标准化组织ISO定义的网络的基本结构,不仅包括一些概念和结构,还包括一系列的协议。 TCP/IP四层模型:既然有OSI七层模型,为什么我们还要定义一 阅读全文
摘要:
添加网卡之后,网卡无法被正确的识别和使用排错方法 查看/etc/udev/rules.d/70-persistent-net.rules的内容,该文件中可以查看到新添加的网卡的MAC地址 修改/etc/sysconfig/network-scripts/ifcfg-eth0的网卡的MAC地址为正确的 阅读全文
摘要:
单例模式 阅读全文
摘要:
异常处理 什么是异常: 我们在调试程序时,常常会因为各种报错信息导致程序无法运行,异常也是一个对象,用来表示错误。我们可以捕捉异常,并做相应处理,从而增加代码的友好程度。 异常处理: 捕捉异常可以使用try/except语句。当代码运行过程中遇到try语句时,会先执行其中的代码,如果正常执行,则跳过 阅读全文
摘要:
模块,用一坨代码实现了某个功能的代码集合。 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合。而对于一个复杂的功能来,可能需要多个函数才能完成(函数又可以在不同的.py文件中),n个 .py 文件组成的代码集合就称为模块。 如:os 是 阅读全文
摘要:
想要在python中使用正则表达式,就需要先导入re模块,正则表达式是一个强大的功能,可以为我们节省很多工作量。 一、元字符: 用一些具有特殊含义的符号表示特定种类的字符或位置。 . 匹配除换行符以外的任意字符 \w匹配字母或数字或下划线或汉字 \W匹配任何非字母数字或下划线或汉字 \s匹配任意的空 阅读全文