当前位置: 首页 > news >正文

建设网站用哪种语言如何建设平台型的网站

建设网站用哪种语言,如何建设平台型的网站,网站配色方法,中国制造网官方网站入口网址线程 队列#xff1a;先进先出堆栈#xff1a;后进先出优先级#xff1a;数字越小优先级越大#xff0c;越先输出import queueq queue.Queue(3) # 先进先出--队列q.put(first) q.put(2) # q.put(third) # q.put(4) #由于没有人取走#xff0c;就会卡主 q.put(4,block… 线程 队列先进先出堆栈后进先出优先级数字越小优先级越大越先输出 import queueq queue.Queue(3) # 先进先出--队列q.put(first) q.put(2) # q.put(third) # q.put(4) #由于没有人取走就会卡主 q.put(4,blockFalse) #等同于q.get_nowait(), Ture 阻塞Flase不阻塞报异常满了 # # q.put(4,blockTrue,timeout3)print(q.get()) print(q.get()) print(q.get()) print(q.get(blockTrue,timeout3)) # 阻塞等待3秒 没有取走数据就报异常 # print(q.get(blockFalse)) #等同于q.get_nowait() # print(q.get_nowait()) q queue.LifoQueue(3) #后进先出--堆栈 q.put(first) q.put(2) q.put(third)print(q.get()) print(q.get()) print(q.get())打印结果: third 2 first q queue.PriorityQueue(3) #优先级队列q.put((10,one)) q.put((40,two)) q.put((30,three))print(q.get()) print(q.get()) print(q.get())数字越小优先级越高 打印结果 (10, one) (30, three) (40, two)线程queue 进程池线程池 池是用来对进程(线程)的数量加以限制进程池计算密集型用多进程线程池IO密集型用多线程例如sockect网络通信就应该用多线程 from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor import os,time,random sockect网络通信是IO操作所以用多线程 计算密集型用多进程 def task(name):print(name:%s pid:%s run %(name,os.getpid()))time.sleep(random.randint(1,3))if __name__ __main__:# pool ProcessPoolExecutor(4) # 进程池最多装4个进程,不指定的话默认是cpu的核数pool ThreadPoolExecutor(5)for i in range(10):pool.submit(task,yang%s %i) # 异步调用池子收了10个任务但同一时间只有4个任务在进行 pool.shutdown(waitTrue) # 类似join 代表往池子里面丢任务的入口关掉 计数器-1print(主)打印结果 name:yang0 pid:11120 run name:yang1 pid:11120 run name:yang2 pid:11120 run name:yang3 pid:11120 run name:yang4 pid:11120 runname:yang5 pid:11120 run name:yang6 pid:11120 run name:yang7 pid:11120 runname:yang8 pid:11120 run name:yang9 pid:11120 run 主 from concurrent.futures import ProcessPoolExecutor,ThreadPoolExecutor from threading import currentThread import os,time,randomdef task():print(name:%s pid:%s run %(currentThread().getName(),os.getpid()))time.sleep(random.randint(1,3))if __name__ __main__:# pool ProcessPoolExecutor(4) # 进程池最多装4个进程,不指定的话默认是cpu的核数pool ThreadPoolExecutor(5)for i in range(10):pool.submit(task) # 异步调用池子收了10个任务但同一时间只有4个任务在进行 pool.shutdown(waitTrue) # 类似join 代表往池子里面丢任务的入口关掉 计数器-1print(主)打印结果 name:ThreadPoolExecutor-0_0 pid:14052 run name:ThreadPoolExecutor-0_1 pid:14052 run name:ThreadPoolExecutor-0_2 pid:14052 run name:ThreadPoolExecutor-0_3 pid:14052 run name:ThreadPoolExecutor-0_4 pid:14052 run name:ThreadPoolExecutor-0_2 pid:14052 run name:ThreadPoolExecutor-0_1 pid:14052 run name:ThreadPoolExecutor-0_3 pid:14052 run name:ThreadPoolExecutor-0_4 pid:14052 run name:ThreadPoolExecutor-0_0 pid:14052 run 主进程池|线程池 同步调用和异步调用 提交任务的两种方式 同步调用:提交完任务后就在原地等待任务执行完毕拿到结果再执行下一行代码,导致程序是串行执行异步调用:提交完任务后不在原地等待任务执行完。回调机制自动触发 #1.同步调用:提交完任务后就在原地等待任务执行完毕拿到结果再执行下一行代码,导致程序是串行执行from concurrent.futures import ThreadPoolExecutor import time import randomdef la(name):print(%s is laing %name)time.sleep(random.randint(3,5))res random.randint(7,13)*#return {name:name,res:res}def weigh(shit):name shit[name]size len(shit[res])print(%s 拉了 %skg %(name,size))if __name__ __main__:pool ThreadPoolExecutor(10)shit1 pool.submit(la,alex).result()weigh(shit1)shit2 pool.submit(la,yang).result()weigh(shit2)shit3 pool.submit(la,hang).result()weigh(shit3)打印结果 alex is laing alex 拉了 8kg yang is laing yang 拉了 8kg hang is laing hang 拉了 7kg同步调用 #2.异步调用:提交完任务后不在原地等待任务执行完 from concurrent.futures import ThreadPoolExecutor import time import randomdef la(name):print(%s is laing %name)time.sleep(random.randint(3,5))res random.randint(7,13)*#return {name:name,res:res}# weigh({name:name,res:res}) # 这样写,所有功能 不能体现出解耦合def weigh(shit):shit shit.result() # 拿到是一个对象需要进行result()name shit[name]size len(shit[res])print(%s 拉了 %skg %(name,size))if __name__ __main__:pool ThreadPoolExecutor(10)shit1 pool.submit(la,alex).add_done_callback(weigh)shit2 pool.submit(la,yang).add_done_callback(weigh)shit3 pool.submit(la,hang).add_done_callback(weigh)打印结果: alex is laing yang is laing hang is laing hang 拉了 10kg alex 拉了 7kg yang 拉了 12kg异步调用 异步调用的应用 from concurrent.futures import ThreadPoolExecutor import requests import timedef get(url):print(GET %s%url)response requests.get(url)time.sleep(3)return {url:url,content:response.text}def parse(res):res res.result()print(%s parse res is %s %(res[url],len(res[content])))if __name__ __main__:urls [http://www.cnblogs.com/linhaifeng,https://www.python.org,https://www.openstack.org,]pool ThreadPoolExecutor(2)for url in urls:pool.submit(get,url).add_done_callback(parse)打印结果 GET http://www.cnblogs.com/linhaifeng GET https://www.python.org http://www.cnblogs.com/linhaifeng parse res is 16320 GET https://www.openstack.org https://www.python.org parse res is 49273 https://www.openstack.org parse res is 64040应用 转载于:https://www.cnblogs.com/Mryang123/p/8921962.html
http://www.zqtcl.cn/news/473861/

相关文章:

  • 苏州网站建设哪家便宜平谷手机网站设计
  • 建设项目一次公示网站嘉兴新站seo外包
  • 电子商务网站模板 html专业网站建设服务报价
  • 网页设计和网站建设的区别研发一款app要多少钱
  • seo网站建设方案建个企业网站需要多少钱
  • 搭建网站的软件网页动态设计
  • 好的界面建筑网站甘孜网站建设
  • 电子商务网站创建过程网站排名提升软件
  • 青岛企业如何建网站购买网站建站
  • 广东自考网站建设管理网站做ddns解析
  • 网站建设分类如何重启网站服务器
  • 新蒲建设集团网站怎么把源码做网站
  • 嘉兴建设局网站在线制作头像框
  • 苏州行业网站建设服务网页制作需要学什么技术
  • 二 网站建设的重要性东莞seo建站优化收费
  • 农业公司注册流程及费用快排seo排名软件
  • 响应式中文网站欣赏机wordpress
  • 如何建网站并做推广亚马逊网站怎么做推广
  • 做好网站建设总结免费开发app平台下载
  • 哈尔滨建站免费模板app网站开发要多少钱
  • 大连网站设计九首选仟亿科技怎么做百度网站会显示图片在旁边
  • 南京营销网站建设wordpress图片购买下载
  • 装修平台网站制作word模板
  • 网站建设捌金手指花总十软文写作技巧
  • 做网站优化有用吗网站开发包括什么软件
  • 在线音乐网站开发现状有什么网站接效果图做的
  • 网站开发自学难吗上海网站建设百度推广公司哪家好
  • 建设部网站官网四库一平台房地产网站大全
  • 做外贸如何建立网站微信信息流广告投放
  • 上海工程建设招投标网站开发购物网站描述