学习笔记
大改427
努力和你站在同一高度
展开
-
1.7~1.11学习笔记
一. HTTP协议:1. CORS: 跨域资源共享, 是一种机制, 它使用额外的HTTP头来告诉浏览器,让运行在一个origin(domain)上的web应用被准许访问来自不同源服务器上的指定的资源.当一个资源从与该资源本身所在的服务器不同的域,协议或端口请求一个资源时,资源会发起一个跨域HTTP请求. 应用场景: ①调用XMLHttpRequest或fetchAPI通过跨站点方式访问资...原创 2019-01-10 17:51:13 · 251 阅读 · 0 评论 -
堆和栈的区别
一、预备知识—程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 由编译器自动分配释放 ,存放函数的参数值,局部变量的值等。其 操作方式类似于数据结构中的栈。 2、堆区(heap) — 一般由程序员分配释放, 若程序员不释放,程序结束时可能由OS回 收 。注意它与数据结构中的堆是两回事,分配...转载 2019-02-26 15:07:32 · 115 阅读 · 0 评论 -
线程通信
转载: https://www.cnblogs.com/2bjiujiu/p/9150380.html线程通信 1. 共享变量 在线程函数上一层作用域定义一个变量,这线程函数都能用此方法并做修改,或这通过把公用变量传递到线程函数中.线程安全性(相对操作变量来说,需要加锁让线程一次操作变量),虽然有时没有锁的情况下结果依然正确,因为GIL这把大锁的存在...转载 2019-02-26 13:37:14 · 91 阅读 · 0 评论 -
python线程间同步之条件变量Condition
转载: https://www.jianshu.com/p/5d2579938517为什么需要条件变量有了前面提到的互斥锁,为什么还需要条件变量呢,当然是由于有些复杂问题互斥锁搞不定了。Python提供的Condition对象提供了对复杂线程同步问题的支持。Condition被称为条件变量,除了提供与Lock类似的acquire和release方法外,还提供了wait和notify方法。...转载 2019-02-25 17:57:15 · 343 阅读 · 0 评论 -
2.25~3.01学习笔记
1. CPU密集型: 处理数据(计算)2. I/O密集型: 等待数据, 查询数据库, 请求网络资源, 读写文件可依据程序花费的时间是在CPU上还是在等待数据上判断这个程序是CPU密集型还是IOIO操作主要分两类: 网络IO和磁盘IO3. 线程相关操作,这些操作都是在线程实例上的方法①设置为守护线程 .setDaemon(True)主线程不等待子线程完成,其实不加上join都是守护...原创 2019-03-01 14:41:46 · 176 阅读 · 0 评论 -
递归相关内容
1. 什么是递归?在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数.比如计算阶乘fact(n) = n! = 1 x 2 x 3 x ... x (n-1) x n = (n-1)! x n = fact(n-1) x ndef fact(n): if n == 1: return 1 return n*fact...原创 2019-02-25 15:04:16 · 181 阅读 · 0 评论 -
Python线程中同步锁详解
转载: https://www.jb51.net/article/139008.htm在使用多线程的应用下,如何保证线程安全,以及线程之间的同步,或者访问共享变量等问题是十分棘手的问题,也是使用多线程下面临的问题,如果处理不好,会带来较严重的后果,使用python多线程中提供Lock , Rlock , Semaphore , Event , Condition 用来保证线程之间的同步,后...转载 2019-02-25 14:06:03 · 631 阅读 · 0 评论 -
Python-全局解释器锁GIL原理
转载: https://www.cnblogs.com/2bjiujiu/p/9150380.htmlGIL 全局解释锁,这个锁是个粗粒度的锁,解释器层面上的锁,为了保证线程安全,同一时刻只允许一个线程执行,但是这个锁并不能保证线程安全,因为GIL会释放掉并且切换到另一个线程上,不会完全占用,一句分配策略(时间片、执行字节码行数、IO操作).GIL只能保证同一时刻同一CPU上...转载 2019-02-25 11:25:07 · 493 阅读 · 0 评论 -
Pthread:POSIX 多线程程序设计
转载: http://www.cnblogs.com/mywolrd/archive/2009/02/05/1930707.html#abstract目录表 摘要 译者序 Pthreads 概述 什么是线程? 什么是Pthreads? 为什么使用Pthreads? 使用线程设计程序 Pthreads API编译多线程程序 线程管理 ...转载 2019-02-25 10:19:04 · 366 阅读 · 0 评论 -
线程是如何调度的?
转发: https://blog.csdn.net/u011454830/article/details/49704839线程调度计算机通常只有一个cpu,在任意时刻只能执行一条机器指令,每个线程只有获得cpu的使用权才能执行指令.所谓多线程的并发运行,其实是从宏观上看,各个线程轮流获取cpu的使用权,分别执行各自的任务.在运行池中,会有多个处于就绪状态的线程在等待cpu, JAVA虚拟机...转载 2019-02-28 17:09:07 · 10359 阅读 · 0 评论 -
2.18~2.22学习笔记
<一>1. python有用的设计模式:创建型模式: 这些模式用于生成具有特定行为的对象.结构型模式: 这些模式有助于为特定用例构建代码.行为模式: 这些模式有助于分配责任和封装行为.2. 创建型模式: 处理对象实例化机制,这样的模式可以定义如何创建对象实例或者甚至如何构造类的方式.3. 单例: 限制类的实例化,只能实例化一个对象.class Singleton:...原创 2019-02-22 16:56:38 · 125 阅读 · 0 评论 -
2.11~2.15学习笔记
<一>1. Thread.setDaemon详解(用户线程和守护线程, 后台进程和前台进程)https://blog.csdn.net/xyls12345/article/details/262566932. docker 安装https://blog.csdn.net/u010889616/article/details/801707673. 输入命令sudo apt-...原创 2019-02-22 16:34:51 · 181 阅读 · 0 评论 -
1.28~2.01学习笔记
一. 1. python中的异常NameError: 尝试访问一个未申明的变量.表示我们访问了一个没有初始化的变量.在python解释器的符号表没有找到那个变量,就会生成.ZeroDivisionError: 除数为零.任何数值被零除都会导致一个ZeroDivisionError异常.SyntaxError: python解释器语法错误.它是唯一一个不是在运行时发生的异常.它代表pyth...原创 2019-02-01 15:52:27 · 204 阅读 · 0 评论 -
1.21~1.25学习笔记
1. 动态创建属性是一种元编程.2. 通常把__init__称为构造方法,其实,用于构建实例的特殊方法__new__,这是个类方法(使用特殊方式处理, 因此不必使用@classmethod装饰器),必须返回一个实例.返回的实例会作为第一个参数(即self)传给__init__方法.因为调用__init__方法时要传入实例,而且禁止返回任何值,所以__init__方法其实是初始化方法,真正构造方法...原创 2019-01-25 12:28:24 · 194 阅读 · 0 评论 -
1.14~1.18学习笔记
1. python的第三方库gevent相关内容gevent运作原理: 它和select, poll, epoll等程I/O复用操作注册监听事件原理是一样的.监听多个I/O对象,当io对象有变化(有数据)的时候就通知用户.(1)当用户进程调用了select,那么整个进程会被block;(2)同时,内核会监听所有select负责的socket;(3)当任何一个socket中的数据准备好了...原创 2019-01-17 17:13:13 · 371 阅读 · 0 评论 -
1.1~1.5学习笔记
一. HTTP协议的相关学习https://developer.mozilla.org/zh-CN/docs/Web/HTTP1. OSI七层协议: http://www.cnblogs.com/qishui/p/5428938.html应用层, 表示层, 会话层, 传输层,网络层, 数据链路层,物理层2. HTTP的概念:HTTP是一种能够获取HTML这样的网络的通讯协议, 是...原创 2019-01-02 16:53:33 · 149 阅读 · 0 评论 -
12.17~12.21学习笔记
一.图解TCP/IP1. ICMP协议用途:确认网络是否正常工作,以及遇到异常时进行问题诊断,制止问题的蔓延,减轻管理员的负担.功能:确认IP包是否成功送到目标地址,通知在发送过程中IP包被废弃的原因.举例:主机A通过路由器1,2向主机B发送一个IP包,路由器2为了知道主机B的MAC地址而发送ARP包, 然而发现主机B电源关闭, 多次发送ARP协议以后,由于始终无法到达...原创 2018-12-24 08:58:54 · 163 阅读 · 0 评论 -
12.24~12.29学习笔记
一. 1. 排序算法的逻辑算法:https://blog.csdn.net/qq_34374664/article/details/79545940O(1)<O(logn)<O(n)<O(nlogn)<O(n^2)<O(n^3)<O(2^n)<O(n!)<O(n^n)冒泡排序原理(稳定): 一次比较两个相邻的元素,如果顺序是错误的,就交换...原创 2019-01-02 08:32:30 · 255 阅读 · 0 评论