Java面向对象高级部分——线程的一些 *** 作方法(四十三)

Java面向对象高级部分——线程的一些 *** 作方法(四十三),第1张

Java面向对象高级部分——线程的一些 *** 作方法(四十三)

对于多线程来说,所有方法都在Thread当中:

static Thread currentThread() 获得当前正在执行的线程对象

       long geiId() 获得该线程的标识符

       String getName()获得该线程的名称

       int getPriority()获得线程的优先级

       Thread.State getState() 返回该线程的状态

       void interrupt() 中断线程

       void setName()设置线程的名字

       void setPriority(int newPriority)设置线程的优先级

       static void sleep(long millis)设置线程休眠

       static void vield()暂停当前线程,并执行其他线程

由于线程 *** 作的不稳定性,所以一般线程启动之后不会对线程的名字进行修改。

package obc18;

public class ThreadDemo02 implements Runnable{
    int ticket = 10;
	@Override
	public void run() {
		for(int i = 0;i<20;i++){
			if(ticket>0){
				System.out.println(Thread.currentThread().getName()+"买票成功,剩余票数为:"+ --ticket);
			}
		}
		
	}

}

 

package obc18;

public class Main {
    public static void main(String[] args) {
		ThreadDemo02 th = new ThreadDemo02();
		new Thread(th,"线程1").start();
		new Thread(th,"线程2").start();
		new Thread(th,"线程3").start();
		new Thread(th,"线程4").start();
	}
}

main方法:

package obc;

public class OopDemo02 {
      public static void main(String[] args) {
		  System.out.println(Thread.currentThread().getName()); 
	}
}

通过程序发现,主函数本身是一个线程,那么java运行的时候,最少需要几个线程?下一篇再说说。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5684735.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存