ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

线程常见问题

2021-10-14 11:59:49  阅读:147  来源: 互联网

标签:10 Runnable Thread 接口 常见问题 线程 多线程


1.什么是线程?

线程是操作系统能够进行运算调度的最小单位

2.线程和进程有什么区别?

线程是进程的子集,一个进程可以有很多线程,每条线程并行执行不同的任务。
不同的进程使用不同的内存空间,而所有的线程共享一片相同的内存空间。别把它和栈内存搞混,
每个线程都拥有单独的栈内存用来存储本地数据。

3.Java中实现多线程有几种方法

继承Thread类;
实现Runnable接口;
实现Callable接口通过FutureTask包装器来创建Thread线程;
使用ExecutorService、Callable、Future实现有返回结果的多线程(也就是使用了ExecutorService来
管理前面的三种方式)。

4.实现Runnable接口和继承Thread类区别

实现Runnable接口比继承Thread类的优势

  • 可以解决 java 中的单继承的限制
  • 适合多个相同的程序代码的线程去处理同一个资源
  • 增加程序的健壮性,代码可以被多个线程共享,代码和数据独立

举例:
比如要卖10张票,分给3个窗口

  • 继承Thread类方式相当于,3个窗口每个都能卖10张票
  • 实现Runnable接口相当于,3个窗口一共买10张,一共10张票,分给3个窗口去卖。

![image.png](https://www.icode9.com/i/ll/?i=img_convert/eb52fd1402826cd8

标签:10,Runnable,Thread,接口,常见问题,线程,多线程
来源: https://blog.csdn.net/qq_38011415/article/details/120761236

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有