上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 23 下一页
  2019年12月24日
摘要: time时间库主要有以下几个方法 1. 生成struct_time ,然后就可以很方便的获取到年月日,时分秒等信息 time.localtime() 2. 生成时间戳 time.time() 3. 将struct_time 转成指定格式的时间字符串 time.strftime(format,stru 阅读全文
posted @ 2019-12-24 22:57 显示账号 阅读(800) 评论(0) 推荐(0) 编辑
  2019年12月23日
摘要: 生成器不但可以产出值 ,还可以接收调用方的入参 举个例子 def gen_fun(): # 这种方式 ,即可产出值 ,也可以接收调用传进来的参数 html = yield "http://www.baidu.com" print(html) # 这种方式就只能产出值,不能接收调用方入参 yield 阅读全文
posted @ 2019-12-23 23:49 显示账号 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 今天在使用fabric远程安装rpm时,一直报:Fatal error: run() received nonzero return code 1 while executing! 这看起来也是没笔病呀,但fabric就是这么蛋疼, 它在执行过程中, 如果执行命令返回非零, 就会中断后面的逻辑. 解 阅读全文
posted @ 2019-12-23 23:21 显示账号 阅读(1549) 评论(0) 推荐(1) 编辑
  2019年12月22日
摘要: ReentrantReadWriteLock包含两把锁,一是读锁ReadLock, 此乃共享锁, 一是写锁WriteLock, 此乃排它锁. 这两把锁都是基于AQS来实现的. 下面通过源码来看看ReentrantReadWriteLock是如何做到读读共享,读写互斥的. 1. 测试代码 import 阅读全文
posted @ 2019-12-22 23:32 显示账号 阅读(257) 评论(0) 推荐(0) 编辑
  2019年12月21日
摘要: 在使用ReentrantLock创建锁实例时,即可以创建公平锁,也可以创建非公平锁.默认是创建非公平锁. Lock lock = new ReentrantLock(true); // 创建一个公平锁 无论是创建公平锁,还是创建非公平锁,其底层都是使用AQS来实现的, 唯一的不同,就是非公平在加入C 阅读全文
posted @ 2019-12-21 23:45 显示账号 阅读(290) 评论(0) 推荐(0) 编辑
摘要: 感觉比java写起来还要忧伤..... """ select , poll,epoll 注意: epoll并不一定比select的性能好,这需要看场景 1. 在高并发场景,且连接活跃度不是很高的时候,epoll比select好, 比如web应用 2. 在并发不高,但连接很活跃的场景下,select 阅读全文
posted @ 2019-12-21 23:33 显示账号 阅读(566) 评论(0) 推荐(0) 编辑
摘要: 经过昨晚的培训.对AQS源码的理解有所加强,现在写个小笔记记录一下 同样,还是先写个测试代码,debug走一遍流程, 然后再总结一番即可. 测试代码 import java.util.concurrent.CyclicBarrier; import java.util.concurrent.lock 阅读全文
posted @ 2019-12-21 15:32 显示账号 阅读(333) 评论(0) 推荐(0) 编辑
  2019年12月18日
摘要: python提供了4种方式来满足进程间的数据通信 1. 使用multiprocessing.Queue可以在进程间通信,但不能在Pool池创建的进程间进行通信 2. 使用multiprocessing.Manager.Queue可以在Pool进程池创建的进程间进行通信 3. 通过Pipe进行线程间的 阅读全文
posted @ 2019-12-18 23:12 显示账号 阅读(1039) 评论(0) 推荐(0) 编辑
摘要: 在 多线程与多进程的比较 这一篇中记录了多进程编程的一种方式. 下面记录一下多进程编程的别一种方式,即使用multiprocessing编程 import multiprocessing import time def get_html(n): time.sleep(n) print('sub pr 阅读全文
posted @ 2019-12-18 22:24 显示账号 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 多线程适合于多io操作 多进程适合于耗cpu(计算)的操作 # 多进程编程 # 耗cpu的操作,用多进程编程, 对于io操作来说,使用多线程编程 import time from concurrent.futures import ThreadPoolExecutor, as_completed f 阅读全文
posted @ 2019-12-18 22:08 显示账号 阅读(368) 评论(0) 推荐(0) 编辑
上一页 1 ··· 7 8 9 10 11 12 13 14 15 ··· 23 下一页