8. 多线程

8. 多线程,第1张

8. 多线程 1. 进程和线程的区别

 

2. Java中线程理解。

3. thread 中的run和start理解

Java run start_落小渔的博客-CSDN博客

4. thread和runnable?

【多线程】Thread和Runnable区别_Smily-王婷婷-CSDN博客_thread和runnable区别
如果一个类继承Thread,则不适合资源共享。但是如果实现了Runable接口的话,则很容易的实现资源共享。
main函数,实例化线程对象也有所不同,
extends Thread :t.start();
implements Runnable : new Thread(t).start();
使用Runnable,增加程序的健壮性,代码可以被多个线程共享,代码和数据独立
线程池只能放入实现Runable或callable类线程,不能直接放入继承Thread的类

 5. 如何获取线程返回结果?

 

用来判断传给的Callable里面的call方法是否已经完成。

当前get方式是用来阻塞的。知道call方法执行完毕

同get。增加了一个超时机制 

使用线程池获取返回值:

6. 线程的状态

7.  sleep和wait的区

 

需要在第一个第二个线程中间新增sleep。保证第一个先执行

8. notify 和 notifyAll区别?

没有参数的情况下,需要主动唤醒才可以呢

我们可以在B线程执行结束的时候,选择唤醒。上面notify也可以是notifyAll

notify、notifyAll:会将唤醒等待池中的某个/全部线程到等待池子中

 9. yield

 10. 如何中断线程?

 11. 线程状态?

 

 12. synchronized?

13. 线程池

 

 JUC的源码里面:

 看看ThreadPollExecutor:

继续查看:

 所以:说明上面几类的起源是一致的。都是Excutor。。。

 Executor框架:是根据一组执行策略调用。调度、执行、控制的异步任务的框架。

目的是提供一种将任务提交和任务运行分离开的框架

 

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5709060.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存