上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 63 下一页
摘要: 提交任务的两张方式: 1.同步调用 2.异步调用 同步调用:提交完任务后,就在原地等待任务执行完后,拿到结果,再执行下一行代码 同步调用,导致程序串行执行 异步调用:提交完任务后,不再原地等待任务执行完 回调函数 可以为进程池或线程池内的每个进程或线程绑定一个函数,该函数在进程或线程的任务执行完毕后 阅读全文
posted @ 2019-07-07 22:25 minger_lcm 阅读(4604) 评论(0) 推荐(0) 编辑
摘要: 一 进程池与线程池 1.为什么需要进程池和线程池 基于多进程或多线程实现并发的套接字通信,然而这种实现方式的致命缺陷是: 服务端的程序运行在一台机器身上,一台机器性能是有极限的,不能无限开线程 服务的开启的进程数或线程数都会随着并发的客户端数目地增多而增多,这会对服务端主机带来巨大的压力,甚至于不堪 阅读全文
posted @ 2019-07-07 22:24 minger_lcm 阅读(1415) 评论(0) 推荐(0) 编辑
摘要: 进程内会生成一个主线程,让主线程执行server函数,server函数核心是accept(),让主线程干accept的工作, 建立连接,每建立一个连接应该执行通信函数 每建立一个连接就是生成一个子线程 服务端 客户端 执行结果 阅读全文
posted @ 2019-07-06 19:03 minger_lcm 阅读(307) 评论(0) 推荐(0) 编辑
摘要: 线程queue 线程之间已经是共享数据的,为什么还使用线程queue? 线程需要自己加锁,线程queue帮我们处理好加锁的问题 有三种不同的用法 第一种方法: class queue.Queue(maxsize=0) #队列:先进先出 put('four',block=,timeout=) 第一个参 阅读全文
posted @ 2019-07-06 19:01 minger_lcm 阅读(410) 评论(0) 推荐(0) 编辑
摘要: event实现了一个线程通知另外一个线程 线程的一个关键特性是每个线程都是独立运行且状态不可预测。 1.为什么要使用Event对象: 如果程序中的其 他线程需要通过判断某个线程的状态来确定自己下一步的操作,这时线程同步问题就会变得非常棘手。为了解决这些问题,我们需要使用threading库中的Eve 阅读全文
posted @ 2019-07-06 18:57 minger_lcm 阅读(336) 评论(0) 推荐(0) 编辑
摘要: 定时器 就是隔多长时间去触发任务执行 指定n秒后执行某操作 Timer如何使用,看Timer源码 Timer() interval 第一个参数传 间隔时间 function 传执行任务的函数 隔了多少秒后执行这个函数 给函数传参方式 args kwargs Timer用的是Thread模块,每启动一 阅读全文
posted @ 2019-07-06 16:20 minger_lcm 阅读(2483) 评论(0) 推荐(0) 编辑
摘要: 一 信号量 信号量也是一把锁,可以指定信号量为5,对比互斥锁同一时间只能有一个任务抢到锁去执行,信号量同一时间可以有5个任务拿到锁去执行 如果说互斥锁是合租房屋的人去抢一个厕所,那么信号量就相当于一群路人争抢公共厕所,公共厕所有多个坑位,这意味着同一时间可以有多个人上公共厕所,但公共厕所容纳的人数是 阅读全文
posted @ 2019-07-06 16:12 minger_lcm 阅读(421) 评论(0) 推荐(0) 编辑
摘要: top 命令主要用于查看进程的相关信息,同时它也会提供查看系统平均负载,cpu 信息和内存信息 实时监控系统资源使用情况 top 常用快捷键: top输出详解 阅读全文
posted @ 2019-06-24 15:49 minger_lcm 阅读(3713) 评论(0) 推荐(0) 编辑
摘要: GIL与多线程 有了GIL的存在,同一时刻同一进程中只有一个线程被执行 多进程可以利用多核,但是开销大,而python的多线程开销小,但却无法利用多核优势 CPU用来计算 1、对计算来说,cpu越多越好,但是对于I/O来说,再多的cpu也没用2、当然对运行一个程序来说,随着cpu的增多执行效率肯定会 阅读全文
posted @ 2019-06-22 15:12 minger_lcm 阅读(557) 评论(0) 推荐(0) 编辑
摘要: 一 死锁现象 所谓死锁: 是指两个或两个以上的进程或线程在执行过程中,因争夺资源而造成的一种互相等待的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程,如下就是死锁 执行结果 解决方法: 二 递归锁 递归锁,在Python中为了支 阅读全文
posted @ 2019-06-21 23:46 minger_lcm 阅读(524) 评论(0) 推荐(0) 编辑
上一页 1 ··· 8 9 10 11 12 13 14 15 16 ··· 63 下一页