业界动态
Java并发编程(1)基础概念
2024-11-22 04:17

1、什么是进程和线程

Java并发编程(1)基础概念

  进程和线程都是操作系统所运行的程序运行的基本单元。进程可以说是是线程的集合。  进程:从系统资源讲,进程都有自己独立的地址空间,一个进程的崩溃不会影响另一个进程的执行。  线程:进程中的一个执行路径,一个进程中可以同时有多个线程在执行,当其中一个线程对公共资源做了修改,其他线程是可以看到的。

2、什么是并行和并发

  并行:多个cpu实例或者多台机器同时执行一段处理逻辑,是真正的同时。  并发:通过cpu调度算法,让用户看上去同时执行,实际上从cpu操作层面不是真正的同时。并发往往在场景中有公用的资源,那么针对这个公用的资源往往产生瓶颈,我们会用TPS或者QPS来反应这个系统的处理能力。

3、高并发编程的意义、好处和注意事项  好处:充分利用cpu的资源、加快用户响应的时间,程序模块化,异步化  问题:1、线程共享资源,存在冲突;  2、容易导致死锁;  3、启用太多的线程,就有搞垮机器的可能

4、如何创建一个线程

  第一种方式:继承Thread类

  第二种方式:实现Runable接口

  第三种方式:匿名类

5、线程的状态、及它们之间的转换关系

  1、New:创建  2、Runnable:准备好了  3、Running:运行  4、Blocked:阻塞  5、Dead:死亡

  五种状态之间的关系,如下图:  

 

  现在对以上图中12条线分别解释说明:  1、Thread对象的start()方法,使线程由“新建”状态转变为“可运行状态”, 此状态下,线程在等待CPU资源;  2、此时线程获得CPU资源,变为“运行”状态,开始执行自己的业务代码,即:run()方法中的代码;  3、有三种情况,导致线程死亡,一、run()方法结束;二、线程响应Interrupt异常;三、抛出异常;  4、Thread对象的yield()方法使得线程放弃当前分得的 CPU 时间,但是不使线程阻塞,即线程仍处于可执行状态,随时可能再次分得 CPU 时间。调用 yield() 的效果等价于调度程序认为该线程已执行了足够的时间从而转到另一个线程;  5、6、Thread类的sleep()方法,让线程阻塞指定时间,此时如果它正占有某对象的锁,那么不会释放锁;指定时间一过,线程重新回到运行状态;     Thread类的suspend()方法,同样也使线程进入阻塞状态,也不会释放锁,只不过需要resume()方法让线程回到运行状态;  7、8、当前线程调用 XX线程.join() 方法,当前线程进入阻塞状态(当前线程调用了XX线程.wait()方法),直到XX线程执行完毕,当前线程回到Runnable状态(线程运行完毕后会调用自身的notifyAll()方法);  9、10、当前线程在获得对象锁的情况下,调用该对象的wait()方法,会使用当前线程进入阻塞状态,直到其他线程调用此对象的notify() 或 notifyAll()方法;  11、12、当前线程遇到synchronized关键字,如果此时锁被占用,则当前线程进入阻塞状态,等待其他线程调用notify() 或 notifyAll()方法,使自己进入Runnable状态,等待获得CPU执行时间;

    以上就是本篇文章【Java并发编程(1)基础概念】的全部内容了,欢迎阅览 ! 文章地址:http://sicmodule.glev.cn/news/10387.html 
     资讯      企业新闻      行情      企业黄页      同类资讯      首页      网站地图      返回首页 歌乐夫资讯移动站 http://sicmodule.glev.cn/mobile/ , 查看更多   
最新新闻
手机怎么做gif图(用手机怎么做gif图)
  《手机怎么做GIF图》  GIF图是一种动态图像格式,由于其支持动画效果,因此在社交媒体和网页设计中广泛应用。现在,随着智
手机捕鱼游戏(手机捕鱼游戏制作百家一起欢乐)
  《手机捕鱼游戏》:现代休闲的新宠  随着科技的飞速发展,智能手机已经渗透到我们生活的方方面面,其中就包括游戏娱乐。而
手机改qq密码(手机改qq密码怎么改的)
  关于《手机改QQ密码》的详细步骤与注意事项  在当今数字化时代,手机已成为我们日常生活中不可或缺的一部分。我们经常使用
手机字体大小设置在哪(手机字体大小设置在哪里?华为)
  关于《手机字体大小设置在哪》的文章  随着智能手机的普及,人们在使用手机的过程中,对于字体大小的需求也各不相同。有的
吃饭看手机的危害(吃饭看手机的危害有多大)
  《吃饭看手机的危害》  在当今社会,随着科技的快速发展,手机已经成为了我们日常生活中不可或缺的一部分。然而,在享受科
手机如何蹭网(手机如何蹭网无线上网)
  关于《手机如何蹭网》的文章——警惕违法犯罪风险  随着移动互联网的普及,无线网络已成为我们日常生活中不可或缺的一部分
华为手机股票(华为手机股票代码600733)
  华为手机股票:投资前景与市场动态  随着科技的飞速发展,智能手机行业在全球范围内持续繁荣,其中华为作为全球领先的智能
手机和微单(手机和微单拍照区别)
  文章标题:《手机与微单:摄影技术的革新与融合》  随着科技的飞速发展,摄影技术也在不断进步。手机与微单作为现代摄影技
red 手机(Red手机是钛合金还是钛钢)
  《Red手机》:科技与美学的完美结合  在当今科技日新月异的时代,智能手机已经成为我们生活中不可或缺的一部分。而在众多
手机内存小怎么办(手机内存小怎么办(黑科技))
  手机内存小怎么办  随着智能手机的普及,手机已经成为我们日常生活中不可或缺的一部分。但是,随之而来的问题是手机内存不