zoukankan      html  css  js  c++  java
  • 多线程和多进程

    一.为何需要多进程(或者多线程),为何需要并发?

    这个问题或许本身都不是个问题。但是对于没有接触过多进程编程的朋友来说,他们确实无法感受到并发的魅力以及必要性。

    我想,只要你不是整天都写那种int main()到底的代码的人,那么或多或少你会遇到代码响应不够用的情况,也应该有尝过并发编程的甜头。就像一个快餐点的服务员,既要在前台接待客户点餐,又要接电话送外卖,没有分身术肯定会忙得你焦头烂额的。幸运的是确实有这么一种技术,让你可以像孙悟空一样分身,灵魂出窍,乐哉乐哉地轻松应付一切状况,这就是多进程/线程技术。

    并发技术,就是可以让你在同一时间同时执行多条任务的技术。你的代码将不仅仅是从上到下,从左到右这样规规矩矩的一条线执行。你可以一条线在main函数里跟你的客户交流,另一条线,你早就把你外卖送到了其他客户的手里。

    所以,为何需要并发?因为我们需要更强大的功能,提供更多的服务,所以并发,必不可少。

    二.多进程

    什么是进程。最直观的就是一个个pid,官方的说法就:进程是程序在计算机上的一次执行活动。

    说得简单点,下面这段代码执行的时候

    [cpp] view plaincopy
     
    1. int main()  
    2.   
    3. {  
    4.   
    5. printf(”pid is %d/n”,getpid() );  
    6.   
    7. return 0;  
    8.   
    9. }  

    进入main函数,这就是一个进程,进程pid会打印出来,然后运行到return,该函数就退出,然后由于该函数是该进程的唯一的一次执行,所以return后,该进程也会退出。

     main函数就是一个程序的主线程,主线程随着程序的结束而结束,一个程序可以有多个子线程,但只能有一个主线程

  • 相关阅读:
    mybatis中一直获取xml配置文件输入流值为空的类似解决方法
    switch中能有的值都有哪些
    length,length(),size()
    Spring中IOC的基本原理
    ajax中的一些小问题
    Servlet简单业务流程
    推荐用字节流处理文件拷贝
    更有效率的数据交换
    1.7版本处理io流自动关闭流的写法
    集合中的简单知识
  • 原文地址:https://www.cnblogs.com/leoncumt/p/10492333.html
Copyright © 2011-2022 走看看