Java线程

线程

线程是一个程序内部的顺序控制流

线程与进程的区别:

进程有独立的代码和数据空间,进程间切换会有较大的开销
线程是轻量的,同一类线程共享代码和数据空间,线程切换的开销小

多进程与多线程

多进程:在操作系统中能同时运行多个任务(程序)
多线程:在同一应用程序中有多个顺序流同时执行

开启线程方法:

1.继承Thread类,重写run方法

MyThread mt = new Mythread();
mt.start();

2.implenmnts Runnable接口

MyRunnable mr = new MyRunnable();
Thread t = new Thread(mr);
t.start();

部分方法介绍:

t.join() 子线程t运行后再运行主线程,这就相当于方法调用
yield(); 让出cpu,让其他程序执行

线程优先级:1————10,默认是5

t.setPriority();

线程同步:

方法中:
synchronized(this){
语句
}
锁定括号内语句执行
或者:
public synchronized int methodname(){};
锁定当前方法内对象等

wait与notify:

this.wait() 类里面的wait方法
this.notify()类里面的唤醒服务

wait与sleep

wait()与sleep()区别:
wait是Object类方法,sleep是Thread类的方法
wait可以让线程休眠,此时放开锁
sleep可以让线程休眠,此时依然拥有锁

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值