多线程
文章平均质量分 71
江说江湖
褪色的代码,安静的产品!
展开
-
java多线程之线程间通信:等待/通知机制
java多线程之线程间通信:等待/通知机制1.不使用等待通知机制实现线程间的通信: while(true)+sleep()实现;一个线程中sleep().一个线程中while()检查。while轮训机制来检查某一条件,这样浪费CPU资源;需要一种机制减少CPU的资源浪费,而且还可以实现多个线程间的通信,这就是“wait/notify”机制;2.等待/通知机制的实现wait():原创 2017-04-08 16:10:19 · 666 阅读 · 0 评论 -
生产者和消费者问题【java等待通知机制实现】
生产者和消费者问题【等待通知机制实现】1.生产者和消费者问题是经典的问题,这里利用等待通知机制实现:wait(),notify()重复下多线程问题的一般框架:多线程的程序一般框架:1.一个服务类A,用于生成对象a,a中包含多个的同步方法或者同步块;a.method1(); a.mothod2();2.多个线程类:线程类ThreadA,线程类ThreadB;含有一原创 2017-04-09 18:02:17 · 760 阅读 · 0 评论 -
Java多线程并发编程之二volatile
Java多线程并发编程之二volatilevolatile:【线程安全包括:原子性+可见性】【“外练互斥,内修可见”】1.多线程可以解决同步死循环问题;按顺序执行的两个函数,其中前个有死循环,后面一个修改循环条件变量;2.在服务器上执行时候,共享变量需要加上volatile,使得变量变化可见,服务器执行的时候,为了提高效率,线程一直在私有堆栈中取值;【变量在公共堆栈和线程私原创 2017-04-03 17:17:30 · 710 阅读 · 0 评论 -
java多线程并发编程之一synchronized
java多线程之一synchronized本文总结适合有一定基础的读者。java多线程---synchronized同步方法1.方法内的变量不存在非线程安全问题;因为方法内的变量都是私有的;2.两个线程同时操作业务对象中的实例变量,可能出现非线程安全问题;3.两个线程分别访问两个实例的相同名称的同步方法时,效果是异步执行的,因为两个对象拥有两个对象锁;4.A持有某个对象原创 2017-04-02 23:51:24 · 593 阅读 · 0 评论 -
单例遇上多线程
单例遇上多线程单例:一个类只能有一个实例;多线程:程序并发执行;总结:六种实现方式【DCL+静态内置类/静态代码块/枚举+序列化:有特点的DCL,思想一样的静态内置类/静态代码块/枚举,特殊的序列化】1.立即加载/饿汉式:单线程和多线程下都是安全的;2.延迟加载/懒汉式:一般:私有静态volatile成员+私有构造函数+同步获取函数+重写克隆函数;优化:DC原创 2017-03-31 23:23:09 · 713 阅读 · 0 评论