看effective java 发现一个小问题
作者说在运行下面程序会永远运行下去。我试了下只运行了一秒。 后来明白可能是作者是单核 我的是多核的原因,所以在新版本里,修改成了“ 不能保证线程看到值的改变”
不知道这么说对不对。请大家看看
import java.io.ObjectStreamException;
import java.lang.reflect.AccessibleObject;
import java.util.concurrent.TimeUnit;
public class Test {
private static boolean isok=false;
public static void main(String[] args){
Thread t=new Thread(new Runnable(){
public void run() {
while (isok){
System.out.println(" i am com");
}
}});
t.start();
try {
TimeUnit.SECONDS.sleep(1);
isok=true;
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
分享到:
相关推荐
《Effective Java》是Java编程领域的一本经典著作,由Joshua Bloch撰写,该书的第三版继续提供了关于如何编写高效、优雅、可维护的Java代码的指导。以下是基于给出的目录和部分内容提取的一些关键知识点: ### 第一...
《Effective Java》是Java开发领域的经典著作,作者...以上仅是《Effective Java》的部分内容,书中还有更多关于枚举、泛型、集合、多线程等方面的重要指导,都是Java开发者提升代码质量、遵循良好编程习惯的宝贵资源。
- 单例模式:讲解了如何正确实现单例类,避免多线程环境下的并发问题。 - 构造函数:强调构造函数应简洁,避免在构造过程中执行复杂操作。 - 工厂方法:介绍工厂方法模式,作为创建对象的抽象接口,提供更大的...
3. **并发编程**:在多线程环境下,正确管理共享资源是避免竞态条件和死锁的关键。书中详细介绍了synchronized关键字的用法、线程安全的集合类,以及如何使用volatile变量确保可见性。此外,还讨论了Future和...
在Java EE(现在称为Jakarta EE)中,开发者需要处理各种复杂的问题,例如多线程、网络通信、数据库交互、事务管理、安全控制以及分布式服务等。《Effective Enterprise Java》通过深入剖析这些关键领域,提供了许多...
10. **并发编程**:介绍`synchronized`关键字、原子变量类、并发集合如`ConcurrentHashMap`,以及线程池的使用,以提高多线程环境下的效率和安全性。 11. **设计模式**:涵盖了一些经典的面向对象设计模式,如装饰...
运行上述代码,可以看到输出的结果中可能会有重复的数字出现,这是因为`getNext()`方法没有正确处理多线程间的同步问题,导致`value`变量的更新顺序无法预测。 #### 3. 线程安全性的等级 ##### 3.1 Bloch的安全...
Java语言的特性包括跨平台兼容性、垃圾回收机制、多线程处理以及异常处理等。Java被设计成能够“一次编写,到处运行”,即一次编写的应用程序可以在任何安装了Java虚拟机(JVM)的设备上运行。Java的生态系统非常...
《Effective Java》是Java开发领域的经典著作,由Joshua Bloch撰写,中文版第二版更是深受广大Java开发者喜爱。这本书提供了许多实用的编程实践和经验教训,帮助开发者编写出更高效、可维护的Java代码。这里我们将...
5. **优先使用不可变对象**:不可变对象在多线程环境中更安全,且更容易设计。书中介绍了如何创建不可变对象,并讨论了其在构建高效缓存和线程安全的类中的作用。 6. **构造器与工厂方法**:讨论了构造器与工厂方法...
《Effective Java》是Java编程领域的一本经典著作,由Joshua Bloch撰写,现在已经更新到第三版。这本书深入探讨了如何编写高效、可维护且设计良好的Java代码,是每一个Java开发者提升技能的重要参考资料。以下是对该...
这本书可能涵盖了多线程编程、内存管理、异常处理、设计模式等多个方面,旨在帮助开发者在实际工作中更好地应对困难,提高编程效率和代码质量。 综合这三本书籍,我们可以学习到完整的Java开发流程,从基础的语法到...
《Java 多线程编程核心技术》是一本讲解 Java 多线程编程的书籍,作者高洪岩详细讲解了多线程编程的核心技术,帮助开发者能够深入理解 Java 的多线程编程机制,并且可以应用于实际项目中。 5. Effective Java 中文...
6. **多线程编程**:在Java中,多线程编程是性能优化的关键。《Effective Java》讲解了如何正确使用synchronized关键字,如何实现线程安全的类,以及线程池和并发工具类的使用。 7. **方法覆盖与重载**:Bloch解释...
java多线程tcp socket server源码 Java学习资料整理 框架 / dubbo监控 / / / / / / / / / / / / / / / / / / / / 收藏 / 技术社区 书籍推荐 计算机基础 计算机科学导论 --(如果不是计算机科班的,应先看看计算机基础...