package ThreadWork.MyThread.lianxi;
class Demolian extends Thread{
int i=1;
// Demolian(){
// setDaemon(true);
// }
private boolean flag=true;
@Override
public void run() {
while (flag){
System.out.println("wu:"+i++);
/**
//static void yield()
// 暂停当前正在执行的线程对象,并执行其他线程。
// yield();
*/
/**sleep(long millis, int nanos)
在指定的毫秒数加指定的纳秒数内让当前正在执行的线程休眠(暂停执行),
*/
// try {
// sleep(200000000);
// }catch (InterruptedException e) {
// System.out.println("线程被唤醒了");
// }
}
}
public void finish(){
flag=false;
}
}
public class Demo1 {
public static void main(String[] args) throws InterruptedException {
/**
* 线程优先级 1-10
* 主线程优先级默认为5,在主线程启动的线程优先级夜也为5
* (在哪个线程里面启动,子线程会跟哪个线程的优先级一致)
*
* */
/**
* 后台线程-当所有的线程都结束时,后台线程也会跟着结束
* t.setDaemon(true); 设置为后台进程
* 后台线程设置必须在线程启动之前,所以一般在构造器里面设置
* */
Thread main = Thread.currentThread();//返回当前线程对象
Demolian t = new Demolian();
// System.out.println(t.getPriority()); //返回线程优先级
// t.setPriority(10); //设置线程优先级
// main.setPriority(1);
//线程启动后自动调用run方法
// t.setDaemon(true);
t.start();
int i=1;
// while (true){
// System.out.println("jin"+i++);
Thread.sleep(100);
// t.interrupt();//中断休眠中的线程,抛出异常
t.finish();
System.out.println("gun");
// }
}
}
线程方法( yield(),sleep,setDaemon(true) )
最新推荐文章于 2024-03-25 10:20:57 发布
本文介绍了一个简单的Java线程控制示例,展示了如何通过标志位控制线程的运行与停止,同时涉及线程的基本属性如优先级和后台线程的设置。
778

被折叠的 条评论
为什么被折叠?



