Java多线程

Posted 知行合一

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java多线程相关的知识,希望对你有一定的参考价值。


进程和线程一样,都是实现并发的一个基本单位。线程是比进程更小的执行单位,线程是在进程的基础上进行的进一步划分。所谓多线程,是指一个进程在执行过程中可以产生多个更小的程序单元,这些更小的单元称为线程,这些线程可以同时存在、同时运行。

Tread类中的主要方法:

序  号 方法名称 类  型 描  述
1 public Thread(Runnable target) 构造 接收Runnable接口子类对象,实例化Thread对象
2 public Thread(Runnable target, String name) 构造 接收Runnable接口子类对象,实例化Thread对象,并设置线程名称
3 public Thread(String name) 构造 接收Runnable接口子类对象,并设置线程名称
4 public static Thread currentThread() 普通 返回目前正在执行的线程
5 public final String getName() 普通 返回线程的名称
6 public final int getPriority() 普通 返回线程的优先级
7 public boolean isInterrupted() 普通 判断目前线程是否被中断,如果是返回true,否则返回false
8 public final boolean isAlive() 普通 判断线程是否在活动,如果是返回true,否则返回false
9 public final void join() throws Interrupted Exception 普通 等待线程死亡
10 public final synchronized void join(long millis) throws Interrupted Exception 普通 等待millis毫秒后,线程死亡
11 public void run() 普通 执行线程
12  public final void setName(String name) 普通 设定线程名称
13 public final void setPriority(int newPriority ) 普通 设定线程的优先级
14 public static void sleep(long millis) throws InterruptedException 普通 使目前正在执行的线程休眠millis毫秒
15 public void start() 普通 开始执行线程
16 public String toString() 普通 返回代表线程的字符串
17 public static void yield() 普通 将目前正在执行的线程暂停,允许其他的线程执行
18 public final void setDaemon(boolean on) 普通 将一个线程设置成后台运行

 

 

 

 

在Java中实现线程操作有两种方式,一种是继承Tread类,另一种是实现Runnable接口。如果一个类继承Thread类,则不适合于多个线程共享资源,而实现了Runnable接口,就可以方便的实现资源的共享。两种都需要实现run()方法。而启动则使用start()方法。

class MyThread extends Thread{属性...; 方法...; public void run(){线程主体;}}

class MyThread implements Runnable{属性...; 方法...; public void run(){线程主体;}}

线程的状态:

创建状态 Thread thread = new Thread();

就绪状态 thread.start();

运行状态 调用run()方法后

堵塞状态 调用sleep()、suspend()、wait()等方法后

死亡状态 调用stop()方法时或run()方法执行结束后。

取得线程的名称:Thread.currentThread().getName(); //currentThread()是静态方法
主方法实际上也是一个线程,一般而言,主方法的优先级高于其它线程。

 



以上是关于Java多线程的主要内容,如果未能解决你的问题,请参考以下文章

什么是JAVA的多线程?

Java多线程 1.认识Java线程

Java多线程 5.栅栏

java 如何实现多线程

java中啥叫做线程?啥叫多线程?多线程的特点是啥

Java多线程-Java多线程概述