一:进程池与线程池(同步,异步+回调函数)先造个池子,然后放任务为什么要用“池”:池子使用来限制并发的任务数目,限制我们的计算机在一个自己可承受的范围内去并发地执行任务池子内什么时候装进程:并发的任务属于计算密集型池子内什么时候装线程:并发的任务属于IO密集型 #提交任务的两种方式: # 同步调用: ...
分类:
编程语言 时间:
2018-09-10 18:31:05
阅读次数:
200
go提供了一种叫map的数据结构,可以翻译成映射,对应于其他语言的字典、哈希表。借助map,可以定义一个键和值,然后可以从map中获取、设置和删除这个值,尤其适合数据查找的场景。但是map的使用有一定的限制,如果是在单个协程中读写map,那么不会存在什么问题,如果是多个协程并发访问一个map,有可能 ...
分类:
编程语言 时间:
2018-09-09 16:51:10
阅读次数:
292
本节内容 引子 到目前为止,我们已经学了网络并发编程的2个套路, 多进程,多线程,这哥俩的优势和劣势都非常的明显,我们一起来回顾下 协程 协程,又称微线程,纤程。英文名Coroutine。一句话说明什么是线程:协程是一种用户态的轻量级线程。 协程拥有自己的寄存器上下文和栈。协程调度切换时,将寄存器上 ...
分类:
编程语言 时间:
2018-09-07 14:05:19
阅读次数:
218
首先说加载场景显示进度条简单的来说需要协程+Update一直用UGUI,进度条就用Slider别忘了引用usingUnityEngine.UI;publicSliderslider;如果想在旁边显示个数字百分比,就再加个Text就好了publicTexttext;假设我们所在场景为old,要去往场景new,如何加载并显示进度呢可以直接在old场景中做,也可以加一个中间场景专门显示加载进度我们就加个
分类:
编程语言 时间:
2018-09-07 11:56:00
阅读次数:
823
C语言基础学习PYTHON——基础学习D10 20180906内容纲要: 1、协程 (1)yield (2)greenlet (3)gevent (4)gevent实现单线程下socket多并发 2、简单爬虫 3、select 4、IO多路复用 5、小结 6、练习 1 协程 协程又叫微线程,纤程。协 ...
分类:
编程语言 时间:
2018-09-07 00:57:25
阅读次数:
310
进程、线程和协程的调度和运行原理总结。 进程、线程的调度策略介绍 linux的操作系统详细调度策略可参考:http://blog.csdn.net/gatieme/article/details/51872659 linux中的进程主要有三种调度策略: 1. 优先级调度:将进程分为普通进程和实时进程 ...
分类:
编程语言 时间:
2018-09-06 14:27:38
阅读次数:
198
迭代器 可迭代 (Iterable):直接作用于for循环变量 迭代器 (Iterator):直接作用于for循环变量,并且可以用next调用 鉴别,可用 生成器 不用for,占内存小,一边循环一边计算——时间换空间 next函数调用,到最后一个,报 异常 生成: 1. 直接使用 1. 函数包含yi ...
分类:
编程语言 时间:
2018-09-06 11:03:32
阅读次数:
151
from functools import partial # 固定参数 def task(renwu_id, n, m): for i in range(n, m): print(f'任务{renwu_id}-结果: {i}') v = yield # yield def sched(*tasks... ...
分类:
编程语言 时间:
2018-08-31 15:46:25
阅读次数:
144
阅读目录 一 引子 二 协程介绍 三 Greenlet模块 四 Gevent模块 引子 之前我们学习了线程、进程的概念,了解了在操作系统中进程是资源分配的最小单位,线程是CPU调度的最小单位。按道理来说我们已经算是把cpu的利用率提高很多了。但是我们知道无论是创建多进程还是创建多线程来解决问题,都要 ...
分类:
其他好文 时间:
2018-08-29 20:30:39
阅读次数:
165
unity终止协程提供了 StopAllCoroutines() 和 StopCoroutines() 两个方法, 但是都只能终止该文件内的 IEnumerator. 并且具体使用有点坑, 见如下实验: Test1: Test1 Run: Test1结果: 成功停止了SayWorld协程. Test ...
分类:
编程语言 时间:
2018-08-29 20:02:43
阅读次数:
171