麻辣社区-四川第一网络社区

校外培训 高考 中考 择校 房产税 贸易战
阅读: 393|评论: 0

Java的进程和线程

[复制链接]

发表于 2015-1-13 17:00 | 显示全部楼层 |阅读模式
什么是进程?
  一个进程就是在一个运行的程序,它有自己独立的内存空间,一组系统资源,每个进程的内部数据和状态都是独立的,例如在window是同时打开多个记事本,虽然它们所运行的程序代码都是一样的,但是所使用的内存空间是独立的,互不干扰.
  什么是线程?
  线程与进程相似,是一段完成某个特定功能的代码,是程序中单个顺序的流控制;但与进程不同的是,同类的多个线程共享一块内存空间和一组系统资源,而线程本身的数据通常只有微处理器的寄存器数据,以及一个供程序执行时使用的堆栈
  进程与线程的区别
  进程:每个进程都有独立的代码和数据空间(进程上下文) ,进程切换的开销大.
  线程:轻量的进程,同一类线程共享代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换的开销小.
  多进程:在操作系统中,能同时运行多个任务程序.
  多线程:在同一应用程序中,有多个顺序流同时执行.
  线程创建的两种方式
  采用继承Thread类创建线程
  该方法比较简单,主要是通过继承java.lang.Thread类,并覆盖Thread类的run()方法来完成线成的创建.Thread 类是一个具体的类,即不是抽象类,该类封装了线程的行为.要创建一个线程,程序员必须创建一个从 Thread 类导出的新类.Thread类中有两个最重要的函数run()和start().
  通过实现Runnable接口创建线程
  该方法通过生成实现java.lang.Runnable接口的类.该接口只定义了一个方法run(),所以必须在新类中实现它.但是 Runnable 接口并没有任何对线程的支持,我们还必须创建 Thread 类的实例,这一点通过 Thread 类的构造函数public Thread(Runnable target);来实现.

打赏

微信扫一扫,转发朋友圈

已有 0 人转发至微信朋友圈

   本贴仅代表作者观点,与麻辣社区立场无关。
   麻辣社区平台所有图文、视频,未经授权禁止转载。
   本贴仅代表作者观点,与麻辣社区立场无关。  麻辣社区平台所有图文、视频,未经授权禁止转载。
  当前版块2016年12月1日之前所发主题贴不支持回复!详情请点击此处>>
复制链接 微信分享 快速回复 返回顶部 返回列表 关闭