Fork me on GitHub

day 31

day 31

1.Event事件
        Event事件的作用:
            - 用来控制线程的执行.
            - 由一些线程去控制另一些线程.

    2.进程池与线程池
        1)什么是进程池与线程池?
            进程池与线程池是用来控制当前程序允许创建(进程/线程)的数量.

        2)进程池与线程池的作用:
            保证在硬件允许的范围内创建 (进程/线程) 的数量.

        3)如何使用:


    3.协程
        - 进程: 资源单位
        - 线程: 执行单位
        - 协程: 在单线程下实现并发

        注意: 协程不是操作系统资源,他是程序起的名字,为让单线程能实现并发.

        协程的目的:
            - 操作系统:
                多道技术, 切换 + 保存状态
                    1) 遇到IO
                    2) CPU执行时间过长

            - 协程:
                通过手动模拟操作系统 "多道技术",实现 切换 + 保存状态
                    1)手动实现 遇到IO切换, 欺骗操作系统误以为没有IO操作.
                        - 单线程 遇到IO, 切换 + 保存状态

                        - 单线程 计算密集型, 来回切换 + 保存状态是,反而效率更低

                优点:
                    在IO密集型的情况下, 会提高效率.

                缺点:
                    若在计算密集型的情况下, 来回切换, 反而效率更低.


                - 如何实现协程: 切换 + 保存状态
                    - yield: 保存状态
                    - 并发: 切换
posted @ 2019-10-27 20:36  Yugaliii  阅读(79)  评论(0)    收藏  举报