线程状态、线程池、Lambda表达式

线程状态、线程池、Lambda表达式

1、线程常见的状态(六种状态)

a. New 新建(例如:刚刚买的新车,还未驾驶)
b. Runnable 可运行(例如:驾驶车)
c. Blocked 锁阻塞(例如: 走在路上,堵车了)
d. Waiting 无限等待(例如: 车子由于违停的情况,被交警拖走了,需要通知取车)
e. Timed Waiting 计时等待(例如: 车子走在路上,等待红绿灯,红灯倒计时结束)
f. Teminated 被终止(例如:车子使用完毕,卖出去了,销毁了)

2、线程通信

2.1、方法
等待与唤醒方法:
    a.等待:  Object 当中的方法 wait()
    b.唤醒:  Object 当中的方法 notify()  notifyAll()
2.2、代码结构
结构: run() - while(true) -> synchronized(锁) -> if wait -> 改变bian ->notify

3、线程池

3.1、线程池的含义及优点
含义:
     其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。
优点:
     A.资源消耗降低
     B.响应速度变快
     C.管理线程容易 
3.2、线程池操作步骤
A. ExecutorService service = Executors.newFixedThreadPool(2); //创建线程池对象。
B. MyRunnable r = new MyRunnable();  //创建Runnable接口子类对象。(task)
C. service.submit(r);  //提交Runnable接口子类对象。(take task)
D. service.shutdown(); //关闭线程池(一般不做)。 

4、Lambda表达式

【1】标准格式:
        (Type1 param1,Type2 param2)->{return 语句体;}
【2】简化格式:
        编译器都可以推断出lambda表达式的参数类型,所以参数类型可以省略(param1,param2)->{return 语句体;}
【3】省略小括号:
        当lambda表达式的参数个数只有一个,可以省略小括号:param->{return 语句体;}
【4】省略大括号:
        当lambda表达式只包含一条语句时,可以省略大括号、return和语句结尾的分号;param->语句体
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值