python
chenzy_hust
检测分割、图像超分、图像去雨领域
展开
-
python函数式编程+多进程
总结:函数式编程避免了for循环式结构,有利于debug时只关注核心代码。此外,在任务复杂和数据量比较大的时候,函数式编程+多进程效率更高。 1.for循环式编程 假设现在有一组数据data,我们想对数据中的每一个成员求平方,常用的实现方式包括for循环和 [ ] 两种,具体如下: #1.for循环方式 res1 = [] for n in data: res1.append(n ** 2) #2.[]方式 res2 = [n ** 2 for n in da.原创 2020-11-12 13:12:21 · 1016 阅读 · 0 评论 -
入门python多进程(一)
mark一下学习笔记: 1.多任务: 学习python多线程与多进程之前,需要先知道多任务这个概念。多任务即是同一时间让系统执行多个任务,其中包括并发和并行两种方式。 A.并发 如上图所示,假设应用场景下只有单核的CPU,需要同时处理3个任务。这就是并发,单核CPU在开启任务1之后会立马开启任务2和任务3,这种在一段时间内交替执行任务的方式就成为并发。此外,单核CPU下只会存在并发,不存在并行的情况。 B.并行 并行就是在同一时刻一起执行多个任务。上图就是多核CPU,每个CPU核执行1个任务的例子。.原创 2020-11-03 19:17:12 · 3779 阅读 · 8 评论 -
入门python多进程(二)
关于python多进程的创建方式请先看入门python多进程(一) 3.进程锁: 由于进程之间的数据不共享,有时候多个进程需要同时访问同一个文件,这就会引发数据安全或顺序混乱问题。 这种情况下,可以使用进程锁,加锁的目的是为了保证多个进程修改同一块数据时,同一时间只能有一个修改,即串行的修改。这种方式会减慢速度,但是牺牲了速度而保证了数据安全。 举一个最常见的买票问题。ticket.json里写的{“count”: 4},表示现在只有4张票,我会启动5个进程去买票,这就意味着第5个进程会买票失败 impor原创 2020-11-08 12:27:32 · 411 阅读 · 3 评论