java 并发笔记

使用线程机制是一种建立透明的,可扩展的程序的方法。


Thread.yield()  是对线程调度器(Java线程机制的一部分,可以将CPU从一个线程转到另一个线程)的一种建议,它在声明:“我已经执行完生命周期中最重要的部分了,此刻正是切换给其他任务执行一段时间的大好时机。


可以再一个任务的内部,通过调用Thread,currentThread()来获得对驱动该任务的Thread对象的引用。”

2. 从任务中产生返回值

线程中Runnable是执行工作的独立任务,它不返回任何值。如果你希望任务在完成时能够返回一个值,那么要实现Callable接口而不是Runnable接口。

Callable是一种具有类型参数的泛型,他的类型参数表示的是从方法call()(而不是run())中返回的值,并且必须使用ExecutorService.submit()方法调用。

3. 优先级

线程的优先级将该线程的重要性传递给了调度器。尽管CPU处理现有线程集的顺序是不确定的,但是调度器将倾向于让优先权高的线程先执行。这不意味着优先权较低的线程得不到执行(优先权不会导致死锁)。优先权较低的线程仅仅是执行的频率较低。
优先级是在run()的开头部分设定的,不要在构造器中设置。 setPriority(),getpriority()。
在调整优先级的时候,只是用 MAX_PRIORITY, NORM_PRIORITY,MIN_PRIORITY。
  线程

4.后台线程

所谓后台(daemon)线程,是指在程序运行的时候再后台提供一种通用服务的线程。 当所有的非后台线程结束时,程序也就终止了,同时会杀死进程中的所有后台线程。

使用 xxxx.setDaemon(true)来把线程设置为后台线程。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值