坚信科学,分享技术

Tag Archives: notify

java线程控制器代码分享-根据cpu情况决定线程运行数量和情况

在人人网海量存储系统的存储引擎部分,为了提高CPU和网络的使用情况,使用了java多线程管理并行操作的方式。 在java中控制线程是一件很简单的事情,jdk提供了诸多的方法,其中比常用的两个是notify()和wait(),一个是唤醒,一个等待线程,在下面的代码中,将看到一个线程分配器,根据cpu的负载情况,自动完成对应线程的唤醒或者是等待操作。整个过程是一个平滑的过程,不会因为线程的切换而导致机器负载出线锯齿。 先看一个类,读取Linux系统TOP等指令拿到系统当前负载: import java.io.BufferedReader; import java.io.InputStreamReader; /** * 节点的cpu 内存 磁盘空间 情况 * * @author zhen.chen * */ public class NodeLoadView { /** * 获取cpu使用情况 * * @return * @throws Exception */ public double getCpuUsage() throws Exception { double …

Continue reading

Posted in java | Tagged , , , | 2 Comments