欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

(JAVA)线程

发布时间:2023/12/10 编程问答 56 豆豆
生活随笔 收集整理的这篇文章主要介绍了 (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);} }

总结

以上是生活随笔为你收集整理的(JAVA)线程的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。