📄 countdispatcher.java
字号:
/*
* Created on 2005-4-1
*
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
*/
package cn.edu.hust.cgcl.biogrid.monitor;
import java.util.LinkedList;
import java.util.ListIterator;
import java.util.Timer;
import java.util.TimerTask;
import java.util.Vector;
/**
* @author Administrator
*
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
*/
public class CountDispatcher {
private final Timer timer = new Timer(true);
private final int minutes;
private Vector dispatcherArray;
private int c=0;
private Integer in;
private boolean computeFlag=true;
public static int dispatcherCount[];
//public static int dispatcherCountTemp[];
private LinkedList ll;
public CountDispatcher(int minutes,Vector dispatcherArray) {
dispatcherCount=new int[60];
for(int j=0;j<60;j++)
dispatcherCount[j]=0;
//workerCountTemp=new int[60];
ll=new LinkedList();
this.minutes = minutes;
this.dispatcherArray=dispatcherArray;
}
public void start() {
timer.schedule(new TimerTask() {
public void run() {
count();
// System.out.println("the count of dispatcher is: "+dispatcherArray.size());
// for(int j=0;j<60;j++)
// System.out.print(dispatcherCount[j]+" ");
// System.out.println();
//timer.cancel();
}
private void count() {
// Start a new thread to count...
in=new Integer(dispatcherArray.size());
ll.add(in);
if(computeFlag)
{
for(int j=59-c;j<59;j++)
dispatcherCount[j]=dispatcherCount[j+1];
dispatcherCount[59]=dispatcherArray.size();
if(++c>=60)
computeFlag=false;
}
else
{
c=0;
ListIterator iter=ll.listIterator();
iter.next();
iter.remove();
while(iter.hasNext())
{
dispatcherCount[c++]=((Integer)(iter.next())).intValue();
}
}
}
}, minutes *1000,minutes *60 *1000);
}
public void quit()
{
timer.cancel();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -