多任务原理
Posted xuefyre
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多任务原理相关的知识,希望对你有一定的参考价值。
调度算法
1.时间片轮转(相当于时分复用)
2.优先级调度
并发:任务数量大于cpu核心数量(看起来像是同时进行,需要调度)
并行:任务数量小于cpu核心数量(真正同时进行,所有任务不需要调度)
程序:可运行的文件(代码),还没运行
进程:正在运行的程序(代码)
fork一般不用
windows下os模块没有fork方法
fork炸弹,无限循环调用fork()
fork方法主进程运行完会先结束,但是不会结束子进程.
用的较多的创建多任务的函数是Pool中的apply_async(函数名,此函数的参数元组类型)
进程间通信使用Queue()通信,一个管道不要使用多次,比如一个管道向两个进程通信的话,某个数据a进程拿到了b进程就拿不到了
使用threading同时(几乎同时)指向一个函数时
每个线程会独立为函数开辟内存空间,两个线程中的局部变量互不影响.
以上是关于多任务原理的主要内容,如果未能解决你的问题,请参考以下文章