java线程笔记

1. 什么是线程?
答:线程是操作系统独立调度的基本单位。
2.为什么使用线程?
答:对于一个程序而言,它或多或少的包含一些相互独立的代码段,如果这些代码能在时间上重叠执行,会具有更高的效率。线程提供了一种方法可以做到这一点。多线程可以加快一个任务的完成。
3. java线程的两种创建方法.
  A. 一种方法是将其定义为Thread类的子类,并重写Thread中的run( )方法。
public  class  MyThread  extends  Thread 
{
@Override
public  void  run()
{
System.out.println("hello  world");
}
public  static  void  main(String[]  args)
{
MyThread  mythread  new  MyThread();

mythread.start();
}
}

  B. 另一种方法是将其定义为实现接口Runnable形式,然后实现接口中的run( )方法,然后在需要的时候在类中         创建一个Thread对象。
  public class MyThread 
       
  public static void main(String[] args) 
 
  Thread thread = new Thread(new Runnable() 
 
public void run() 
 
  System.out.println("hello world"); 
 
  }); 
 
}
4. 守护线程和用户线程
    在java中有两类线程,User Thread(用户线程),Daemon Thread(守护进程)
    守护线程:它的作用是保护非守护线程的正常运行,守护线程最典型的例子是垃圾收集器(GC)。当且仅当                         JVM中不存在用户进程时,守护进程就随着JVM一同结束工作。
    用户线程:用户线程与守护线程的区别集中在JVM上。当所有的用户线程结束时,JVM便退出。而当JVM退出     时,守护线程也就随之结束。
     
    守护线程并非只有虚拟机内部提供,我们也可以显示的通过mythread.setDaemon(true)的方式将一个线程变     成一个守护线程。值得注意的是mythread.setDaemon(true)必须在mythread.start()之前,不然就会抛出
    java.lang.llegalThreadStateExcepti on异常。Daemon中产生的新线程也是Daemon线程。还有一点就是并       不是所有的任务都可以让守护进程执行。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值