有四种方式可以引起休眠 ①在wake_unlock()中, 如果发现解锁以后没有任何其他的wake lock了, 就开始休眠 ②在定时器到时间以后, 定时器的回调函数会查看是否有其他的wake lock, 如果没有, 就在这里让系统进入睡眠 ③在wake_lock() 中, 对一个wake lock... ...
分类:
移动开发 时间:
2017-12-21 11:53:26
阅读次数:
734
除了at、crontab外,batch和anacron也和例行工作相关。batch和at作用基本一致,主要区别是batch是当cpu工作负载小于0.8时才进行后续的工作安排,从而避免cpu100%负载状态时还要进行例行工作。而anacron的作用是配合 /etc/anacrontab 的设定,可以唤醒停机期间系统未进行的 crontab 任务。/etc/crontab 配置文件内容:[root@w
分类:
其他好文 时间:
2017-12-20 15:09:58
阅读次数:
109
这周我们对线程有了较好的理解, 掌握了两种创建线程的方法,第一种:继承thread类, 重写run方法,在run方法中写要执行的代码。在创建线程对象时传入子类对象。第二种: 实现Runable接口,重写run方法。在创建线程对象时候传入该接口的子类对象。 多个线程同时启动的时候,每个线程大概会有五种 ...
分类:
编程语言 时间:
2017-12-17 22:06:52
阅读次数:
115
一. 上一节中的代码写的并不是很眼镜,如下图中的属性,应该都是私有的。我们不应该直接访问资源中的属性,是因为它具备了不安全性。 瞎赋值怎么办呢?为了可控,意味着资源里面的属性需要被私有化,并对外提供方法访问。因此上节中的代码要进行改写。 首先对资源描述类进行修改,至于为什么set方法中写有两个形参, ...
分类:
编程语言 时间:
2017-12-17 11:10:43
阅读次数:
198
一. 引言 刚才的输出中,是一片相同的连续输出。现在我们希望,每输入一次,输出端就输出一次。 在输入前要先明确一下,资源里面是否有数据。有数据的话要先输出,我们要在资源中多定义个变量,用来标记里面是否有数据。 也就是说,资源里面的数据被输出了。 上来先默认资源里面没有数据。输入拿到执行权后,先判断资 ...
分类:
编程语言 时间:
2017-12-17 11:07:04
阅读次数:
196
(一) 在做Android开发时,很多应用由于各种目的,希望在机器启动时被唤醒,一般的做法是写一个BroadcastReceiver,接收对应的boot action,当然别忘了在Manifest中添加permission "android.permission.RECEIVE_BOOT_COMPL ...
分类:
移动开发 时间:
2017-12-16 14:51:17
阅读次数:
272
第一,谈谈final, finally, finalize的区别。 final?修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被 ...
分类:
编程语言 时间:
2017-12-15 18:58:25
阅读次数:
182
今天我们聊聊 Java 线程的中断机制。 线程中断机制提供了一种方法,用于将线程从阻塞等待中唤醒,并作出相应的“受控中断”处理。 这段代码使用了 Java 提供的 wait/notify 机制,线程执行 lock.wait() 会阻塞,有三种情况使线程恢复运行。 超时 1000ms 结束,正常执行下 ...
分类:
编程语言 时间:
2017-12-09 22:21:36
阅读次数:
224
饥饿与公平: 1.高优先级吞噬所有低优先级的CPU时间片 2.线程被永久堵塞在一个等待进入同步块的状态 3.等待的线程永远不被唤醒 关于优先级,编程的时候注意: 不要假定高优先级的线程一定先于低优先级的线程,不要有逻辑依赖线程优先级,否则可能有意外错误。因为,不同的平台,对于同一个优先级的数值,可能 ...
分类:
编程语言 时间:
2017-12-08 00:03:05
阅读次数:
181
转 http://blog.itpub.net/28883355/viewspace-1080879/ oradebug它可以启动跟踪任何会话,dump SGA和其它内存结构,唤醒ORACLE进程,如SMON、PMON进程,也可以通过进程号使进程挂起和恢复等,还有很多功能,实际上这些功能都不常用,但 ...
分类:
其他好文 时间:
2017-12-07 00:12:38
阅读次数:
228