JUC 相关知识点总结

Posted FzshuaiBlog

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JUC 相关知识点总结相关的知识,希望对你有一定的参考价值。

JUC 相关问题

一、Java 如何开启线程?怎么保证线程安全?

线程和进程的区别:进程是操作系统进行资源分配的最小单元。线程是操作系统进行任务分配的最小单元,线程隶属于进程。

线程和进程切换上下文区别:

如何开启线程?1、继承 Thread 类,重写 run() 方法。

​ 2、实现 Runnable 接口,实现 run() 方法

​ 3、实现 Callable 接口,实现 call() 方法。通过 FutureTask 创建一个线程,获取线程执行的返 回值。

​ 4、通过线程池来开启线程。

​ 怎么保证线程安全?加锁:JVM 提供的锁,也就是 Synchronized 关键字。

​ JDK 提供的各种锁 Lock。

二、Volatile 和 Synchronized 有什么区别?Volatile 能不能保证线程安全?DCL(Double Check Lock)单例为什么要加Volatile?

public class VolatitleDemo1 

	public static volatile boolean flag = true;

	public static void main(String[] args) 
		new Thread(() -> 
			while (flag) 

			
			System.out.println("=============End of Thread1===============");
		).start();
		try 
			Thread.sleep(100);
		 catch (Exception e) 
			// TODO: handle exception
			e.printStackTrace();
		
		System.out.println("turn flag off");
		flag = false;
	

更新中······

以上是关于JUC 相关知识点总结的主要内容,如果未能解决你的问题,请参考以下文章

Day280.线程8大基础知识---面试题总结 -Juc

JUC技术高质量面试总结

JUC技术高质量面试总结

Java面试题

Java开发岗面试知识点解析

[ Java面试题 ]Java 开发岗面试知识点解析