• 线程-进程


    1.进程(Process):是程序的一次执行过程,是系统进程调度和资源分配的一个独立单位。   简单地说,就是一个正在执行的程序,一个程序被加载到内存,系统就创建了一个进程, 程序执行结束后,该进程也就消亡了。   运行中程序,进程特征:               a.独立性,独有自己的资源,独有自己的内存区。                                   通常来说,一个进程的内存空间,是不允许其他进程访问的。                                     像window,A进程可以通过某种方式修改其他进程的内存直--外捷

                               b. 动态性,程序是静止,运行起来才叫进程。。                            c. 并发性,一个操作系统可以同时“并发()”运行多个进程

    2.线程(Threads) 一般意义上,如果一个程序只有一个进程就可以处理所有任务,那么它就是单线程的。

    线程-是进程中的“并发”执行流。 轻量级线程

    如是一个程序可以被分解为多个进程共同完成程序的任务,那么被分解的不同进程就叫做线程。

    目前 在UNIX中,进程仍然是CPU的分配单位,而在window中,线程是CPU的分配单位 把线程作为CPU的单位分配单位的好处是:充分共享资源,减少内存开销,提高并发 性,加快切换速度,目前大部分应用程序都是多线程的结构。

    进程与线程的经典区别:进程是有独立内存空间的,因此创建进程的成本比 创建线程的成本高。

    什么是并发,什么是并行(parallelism)

    并发,即使只有一个CPU,多个进程,或多个线程在CPU上【快速轮换】的执行。 在一个时刻,只有与CPU个数相同的进程真正的在执行。 其他进程都处于等待状态, ----对于用户来说,感觉是多个进程在同时执行。 并行,必须有一个以上CPU,这样就可以保证在同一时刻,       至少有与CPU个数相同的进程真正在执行,       这些正在执行的进程就是在并行。 并行,是多个进程【真正在多个CPU】上同时执行。      

    多线程的好处:      1.功能上类似多进程      2.创建成本低,效率高。      3.所有线程共享进程的内存,因此线程之间通信非常方便      4.java语言的多线程非常优秀

  • 相关阅读:
    【转】linux之fsck命令
    【转】linux之mkfs/mke2fs格式化
    【转】linux_fdisk命令详解
    【转】linux之ln命令
    [转]linux的du和df命令
    [转]Linux之type命令
    [转]Linux下which、whereis、locate、find 命令的区别
    [转]Linux的chattr与lsattr命令详解
    get 与post 的接收传值方式
    在asp.net前台页面中引入命名空间 和连接数据库
  • 原文地址:https://www.cnblogs.com/oo_o/p/5487782.html
Copyright © 2020-2023  润新知