Java线程

多线程程序

        GUI应用工具

        耗时I/O处理

        服务器程序

        游戏


Thread的start方法

        启动新线程

        调用run方法


并发

        当只有一个CPU时,并发实际上可以当成顺序执行


Java线程_第1张图片

        当有多个CPU时可以当成并行执行


Java线程_第2张图片


线程的启动

        利用Tread类的子类

        利用Runable接口

        利用TreadFactory

synchronized

        synchronized方法或代码块每次只能由一个线程执行


Java线程_第3张图片


Java线程_第4张图片


        每一个实例都有一个独立锁


Java线程_第5张图片

        sychoronized静态方法使用的是类对象锁


线程的协作


Java线程_第6张图片
Java线程_第7张图片
Java线程_第8张图片
Java线程_第9张图片


Java线程_第10张图片
Java线程_第11张图片
Java线程_第12张图片


notify和notifyAll的区别


Java线程_第13张图片
Java线程_第14张图片

                使用notifyAll的代码会比notify的代码更键壮


线程的状态


Java线程_第15张图片

你可能感兴趣的:(Java线程)