首页 > 代码库 > 多 线 程

多 线 程

什么是进程:

    进程是程序的一次动态执行过程

进程的特点:
        1、进程是系统运行程序的基本单位
        2、每一个进程都有自己独立的一块内存空间、一组系统资源
        3、每一个进程的内部数据和状态都是完全独立的
什么是线程:

    线程是进程中执行运算的最小单位,可完成一独立的顺序控制

多线程的好处:

        1、充分利用CPU的资源
        2、简化编程模型
        3、带来良好的用户体验

创建线程的方式:

        1、声明一个继承了Theread类的子类,在此类中,实现Theread类的run()方法
        2、声明一个实现Runnable接口子类,然后在实现run()方法

在java程序中启动时,一个线程立刻运行该线程通常通常称为程序主线程

            public static void mian()方法是主线程的入口

    主线程的作用:
        1、它是产生其他子线程的线程
        2、通常它必须最后完成执行,因为它执行各种关闭动作

使用线程的过程:
        1、定义一个线程 2、创建线程对象  3、启动线程  4、终止线程

线程的状态: 创建 就绪 运行 阻塞  死亡


使用Theread类中的方法实现对线程的操作:

    设置线程名:getName()方法获取线程名  setName() 设置线程名

    调整优先级:getPriority()方法获取 setPriority(int grade)方法,参数表示优先级必须1~10的整数 注:只提高优先的概率

    线程睡眠:sleep(long millis) 方法使线程转到阻塞状态
    
    线程的强制运行:join()方法可以强制某一线程运行

    线程礼让:yield()方法,暂停当前正在执行的线程对象,有可能把执行机会让给相同的线程

什么是线程同步:
    
    当两个或多个线程需要访问同一资源时,需要以某种顺序来确保该资源某一时刻只能被一个线程使用,这就称为线程同步

    线程同步都必须使用关键字synchronized  两种同步方式:

        1、同步方法  

            语法: 访问修饰符 synchronized  返回类型 方法名(参数列表){ 方法体 }

        2、同步代码块
            
            语法:  synchronized(this){ 代码块 }

多 线 程