上一页 1 ··· 44 45 46 47 48 49 50 51 52 ··· 61 下一页
摘要: 1 socket套接字 class 对象 2.socket通信udp 3.端口的问题 2)绑定端口号 4.接受数据 接收方需要绑定端口 发送方不需要绑定 5.upd网路通信过程 阅读全文
posted @ 2017-12-04 12:15 venicid 阅读(356) 评论(0) 推荐(0) 编辑
摘要: 1.TCP/IP协议(族) 协议是完成进程间通信的一种规范 tcp/ip不是一个协议,而是协议族,是个协议的总称 2.端口 3.IP地址 阅读全文
posted @ 2017-12-04 11:24 venicid 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 1.GIL 全局解释器锁:保证同一时刻只有一个线程在运行。 什么是全局解释器锁GIL(Global Interpreter Lock) Python代码的执行由Python 虚拟机(也叫解释器主循环,CPython版本)来控制,Python 在设计之初就考虑到要在解释器的主循环中,同时只有一个线程在 阅读全文
posted @ 2017-12-04 10:29 venicid 阅读(316) 评论(0) 推荐(0) 编辑
摘要: 异步 同步调用就是你 喊 你朋友吃饭 ,你朋友在忙 ,你就一直在那等,等你朋友忙完了 ,你们一起去 (确定的) 异步调用就是你 喊 你朋友吃饭 ,你朋友说知道了 ,待会忙完去找你 ,你就去做别的了。(不确定什么时候去) 1)异步程序1:回调函数 2)异步2:执行回调函数 阅读全文
posted @ 2017-12-04 09:43 venicid 阅读(168) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal 在多线程环境下,每个线程都有自己的数据。一个线程使用自己的局部变量比使用全局变量好,因为局部变量只有线程自己能看见,不会影响其他线程,而全局变量的修改必须加锁。 1. 使用函数传参的方法 但是局部变量也有问题,就是在函数调用的时候,传递起来很麻烦: 每个函数一层一层调用都这么 阅读全文
posted @ 2017-12-04 09:11 venicid 阅读(187) 评论(0) 推荐(0) 编辑
摘要: 1. 生产者消费者模式的说明 1)为什么要使用生产者和消费者模式 在线程世界里,生产者就是生产数据的线程,消费者就是消费数据的线程。在多线程开发当中,如果生产者处理速度很快,而消费者处理速度很慢,那么生产者就必须等待消费者处理完,才能继续生产数据。 同样的道理,如果消费者的处理能力大于生产者,那么消 阅读全文
posted @ 2017-12-03 20:34 venicid 阅读(482) 评论(0) 推荐(0) 编辑
摘要: 1.堵塞:是否等待 2. 什么是同步?按顺序执行 同步就是协同步调,按预定的先后次序进行运行。如:你说完,我再说。 3.同步:多个线程有序执行 阅读全文
posted @ 2017-12-03 20:00 venicid 阅读(195) 评论(0) 推荐(0) 编辑
摘要: 1. 死锁 在线程间共享多个资源的时候,如果两个线程分别占有一部分资源并且同时等待对方的资源,就会造成死锁。 2. 避免死锁 程序设计时要尽量避免(银行家算法) 添加超时时间等 1)添加看门狗 、 2)银行家算法 阅读全文
posted @ 2017-12-03 19:52 venicid 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 1.g_num 不是全局变量 2.线程名 3.两个线程执行同一个函数 两个线程执行的函数没有关系 函数个人是个人的,函数里面的变量没有关系 小总结 在多线程开发中,全局变量是多个线程都共享的数据,而局部变量等是各自线程的,是非共享的 阅读全文
posted @ 2017-12-03 18:52 venicid 阅读(209) 评论(0) 推荐(0) 编辑
摘要: 1. 添加flag 2.轮询:永无休止的进行flag判断 3.互斥锁 当多个线程几乎同时修改某一个共享数据的时候,需要进行同步控制 线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制是引入互斥锁。 互斥锁为资源引入一个状态:锁定/非锁定。 threading模块中定义了Lock类,可以方便的 阅读全文
posted @ 2017-12-03 18:34 venicid 阅读(519) 评论(0) 推荐(0) 编辑
上一页 1 ··· 44 45 46 47 48 49 50 51 52 ··· 61 下一页