老师,信号量变量为什么要用final修饰?

来源:2-4 并发模拟-代码

JasonWalker

2018-05-21

为什么Semaphore要用 final 修饰

写回答

1回答

Jimin

2018-05-21

你好,学完后面的课程你可能会更清楚关于final的使用。你可以先看一下 http://www.importnew.com/7553.html 这里介绍的final关键字的好处:

1)final关键字提高了性能。JVM和Java应用都会缓存final变量。

2)final变量可以安全的在多线程环境下进行共享,而不需要额外的同步开销。

3)使用final关键字,JVM会对方法、变量及类进行优化。

因此,一个变量如果可以使用final修饰时,使用final修饰会有他特有的好处。

此外,还有一些场景,要求传入的变量必须是final修饰的才可以,比较常见的就是传入线程池的变量。这些在实际运行时需要保证变量“不可变”。

0
4
Jimin
回复
qq_腾飞_11
恩,找到了就好,这些同步手段还是很靠谱的,出错基本都是写的有问题。
2018-05-22
共4条回复

Java高并发编程,构建并发知识体系,提升面试成功率

构建完整并发与高并发知识体系,倍增高薪面试成功率!

3923 学习 · 832 问题

查看课程