A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wb277379322 中级黑马   /  2016-9-5 12:01  /  236 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

多线程:
        概念:
                进程:可以理解为程序
                线程:程序的执行路径、执行绪,即一个进程有一个或多个线程执行。CPU执行以线程为单位。
                线程调度方式:Java使用抢占式线程调度方式
               
                多线程没有提高运算速度,提高了CPU执行效率,所以当完成复杂代码时,看上去确实快了!实际上是CPU在多个线程间高速切换。
               
        两种格式:
                继承线程类:
                        定义类继承Thread
                        重写run方法
                        创建自定义的线程对象
                        开启线程
                实现Runnable接口:
                        定义类实现Runnable(线程执行目标)接口
                        重写run方法
                        创建线程执行目标类对象
                        通过线程执行目标类对象创建线程
                        开启线程
                       
                两种方式第二种更好:
                        将线程执行目标与线程本身分离
                        方便了数据共享
                        突破了单继承的局限性
                       
        线程安全处理机制:
                出现前提:
                        多个线程
                        抢占式调度方式
                        多个线程具有共享数据
                        多各线程操作共享数据
                处理办法:
                        同步代码块:多个线程需要使用同一把锁的代码块同步
                                synchronized(任意类型的锁对象) {
                                        被同步的代码
                                }
                               
                        同步方法:在方法上加入synchronized  默认锁为this,如果是静态方法,默认锁为   该类类名.class

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马