摘要: 本文主要讲了Java当中的线程池的使用方法、注意事项及其实现源码实现原理,并辅以实例加以说明,对加深Java线程池的理解有很大的帮助。 首先,讲讲什么是线程池?照笔者的简单理解,其实就是一组线程实时处理休眠状态,等待唤醒执行。那么为什么要有线程池这个东西呢?可以从以下几个方面来考虑:其一、减 ...
分类:
编程语言 时间:
2016-08-05 17:44:10
阅读次数:
266
Select函数实现原理分析 <原文> select需要驱动程序的支持,驱动程序实现fops内的poll函数。select通过每个设备文件对应的poll函数提供的信息判断当前是否有资源可用(如可读或写),如果有的话则返回可用资源的文件描述符个数,没有的话则睡眠,等待有资源变为可用时再被唤醒继续执行。 ...
分类:
其他好文 时间:
2016-08-04 14:55:02
阅读次数:
145
电源管理PowerManager
PowerManager是Android的电源管理类,用于管理电源操作如睡眠、唤醒、重启以及调节屏幕亮度等等。
PowerManager的对象从系统服务POWER_SERVICE中获取,它的主要方法如下:
goToSleep : 睡眠,即锁屏。
wakeUp : 唤醒,即解锁。
reboot : 重启。
另有下列几个隐藏的方法:
getMinimum...
分类:
移动开发 时间:
2016-08-02 17:08:14
阅读次数:
390
ConditionVariable都会搭配一个Mutex来用.我们知道Mutex的普通意义上是维持一个互斥变量,从而保证一个或一组操作的原子性.同样,简单的说Mutex加在ConditionVariable上也是为了保证它的原子性了.ConditionVariable,有条件的唤醒机制.最经典不过的就是生产--消息者模型了.但有一..
分类:
其他好文 时间:
2016-07-20 19:49:31
阅读次数:
260
1、前言 上一节讲了Zigbee的睡眠定时器利用外部按键使系统从休眠态唤醒到工作态,其核心在于: 其中参数mode表示电源管理系统中的PM1、PM2、PM3、全功能模式,上节只对这几种模式做简单的介绍,本节将详细介绍电源管理部分,而后分析基于Zigbee休眠定时器实现的周期性休眠唤醒工程。 2、低功 ...
分类:
其他好文 时间:
2016-07-20 01:11:00
阅读次数:
273
Linux的进程有一种状态等待为TASK_UNINTERRUPTIBLE,称为D状态,该种状态下进程不接收信号,只能通过wake_up唤醒。处于这种状态的情况有很多,例如mutex锁就可能会设置进程于该状态,有时候进程在等待某种IO资源就绪时(wait_event机制)会设置进程进入该状态。一般情况下,进程处于该状态的时间不会太久,但若IO设备出现故障或者出现进程死锁等情况,进程就可能长期处于该状态而无法再返回到TASK_RUNNING态。因此,内核为了便于发现这类情况设计出了hung task机制专门用于...
分类:
系统相关 时间:
2016-07-19 10:56:50
阅读次数:
305
一、CAS和synchronized适用场景 1、对于资源竞争较少的情况,使用synchronized同步锁进行线程阻塞和唤醒切换以及用户态内核态间的切换操作额外浪费消耗cpu资源;而CAS基于硬件实现,不需要进入内核,不需要切换线程,操作自旋几率较少,因此可以获得更高的性能。 2、对于资源竞争严重 ...
分类:
编程语言 时间:
2016-07-14 02:36:22
阅读次数:
228
Linux CFS调度器之唤醒抢占
日期
内核版本
架构
作者
GitHub
CSDN 2016-07-05
Linux-4.6
X86 & arm
gatieme
LinuxDeviceDrivers
Linux进程管理与调度
CFS负责处理普通非实时进程, 这类进程是我们linux中最普遍的进程1 前景回顾1.1 CFS调度算法CFS调度算法的...
分类:
系统相关 时间:
2016-07-11 17:21:17
阅读次数:
377
1、简单的小例子: 下面这个例子主要观察的是: 一个对象的wait()和notify()使用情况! 当一个对象调用了wait(),那么当前掌握该对象锁标记的线程,就会让出CPU的使用权,转而进入该对象的等待池中等待唤醒,这里说明一下,每一个对象都有一个独立的等待池和锁池! 等待池:上述的wait() ...
分类:
编程语言 时间:
2016-07-10 21:48:44
阅读次数:
244
/*线程的5种运行状态1.首先,线程被创建2.start()运行3.临时状态(阻塞状态)具备运行资格,但没有执行权4.冻结 sleep(time) sleep 时间到(睡眠状态) wait() notify()唤醒(等待状态) 结束之后,可能进入临时状态5.消亡 stop() */ ...
分类:
编程语言 时间:
2016-07-10 18:19:40
阅读次数:
151