(JAVA)线程

/**
 * @author Alina
 * @date 2021年12月12日 11:37 下午
 * 线程:分为三个级别
 * 1.定义类,继承Thread 类,继承线程类
 *  该类重写run()方法
 *  创建子类对象
 *  * 执行join方法的线程,会一次执行完毕,其他线程在争夺资源
 *  * 线程休眠 :sleep 静态
 *  * 线程的让步:yield 静态
 *  * 线程的守护:setDaemond() 非静态
 * 最低:--->1
 * 默认:--->5
 * 最高:--->10
 * 2.定义类。继承runnable接口
 * 重写抽象方法run()
 * 创建thread 类的对象。Thread 构造方法中传递Runnable接口的实现类对象
 * 调用thread类的start方法
 * 利:实现接口,避免单继承的局限性
 *     实现接口,也可以共享数据
 * 弊:存在安全隐患,使用同步技术,保证线程安全
 * 共享数据,只有一个线程在运行
 * 关键字synchronized(任意对象){
 *     线程操作的共享数据
 * }
 *
 *
 *

 *
 *
 */
class   TicketRunnable implements Runnable{
    private int ticker = 1 ;
    private Object obj = new Object();
    public void run() {
        synchronized (obj){
            while (ticker<100){

                try{
                    Thread.sleep(20);
                }catch (Exception e){}
                System.out.println(Thread.currentThread().getName()+"no."+"...."+ticker);
                ticker++;


            }

        }
    }
}

public class ThreadDemo {
    public static void main(String[] args) throws Exception{
        TicketRunnable tp = new TicketRunnable();
        Thread t0 = new Thread(tp);
        Thread t1 = new Thread(tp);
        Thread t2= new Thread(tp);
        t0.start();
        t1.start();
        t2.start();



    }




    public static void method_2()throws Exception{
        SubThread p0 = new  SubThread();
        SubThread p1 = new  SubThread();
        p0.start();
        p0.join();
        p1.start();
        for (int x=0;x<100;x++){
            Thread.sleep(100);
            Thread.yield();
            System.out.println(Thread.currentThread().getName()+"......"+x);
        }
    }
    public static void method_1(){
        PrioityThead pt = new PrioityThead();
        int x = pt.getPriority();
        System.out.println(x);
        //获取当前线程的优先级
        int y = Thread.currentThread().getPriority();
        System.out.println(y);

    }
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值