java之多线程理论篇

一、概念理解

进程:程序关于某数据集合的一次运行活动

线程:进程运行的逻辑单元

 

并发:同一时间段同一实体的两个或多个事件的发生

并行:同一时刻不同实体上的两个或多个事件发生

 

线程安全

指在并发的情况之下,该代码经过多线程使用,线程的调度顺序不影响任何结果。这个时候使用多线程,我们只需要关注系统的内存,cpu是不是够用即可。

线程不安全

线程不安全就意味着线程的调度顺序会影响最终结果

 

多进程:操作系统同时运行多个任务(程序)

多线程:一个进程里运行不止一个线程,同一程序中多个顺序流在执行

 
二、为什么用,适用场景,优缺点

为什么用:提高CPU使用率,提高效率,提高性能


适用场景:1.耗时或大量占用处理器的任务阻塞用户界面操作(聊天)

                 2.各个任务必须等待外部资源(文件上传下载)


优点:1.提高用户使用效率、

          2.设置优先级以优化性能

          3.没有进行处理的任务时可以将处理器时间然给其他任务

          4.可以随时停止任务

          5.占用大量处理时间的任务可以定期将处理器时间让给其他任务

 

缺点:1.耗时阻塞用户界面操作

          2.各个任务必须等待外部资源

         3.资源竞争产生死锁

         4.对共有变量的读和写,产生错误。

 

 

三、如何理解多线程和多进程


 java之多线程理论篇


 

四、进程状态解析


 java之多线程理论篇

 


.实现方法

1.继承java.lang.thread

2.实现Runable接口