我在下面写的代码保存了进程在ArrayList
中拥有cpu时的时间戳。如果(timeStamps.get(i)-时间戳。get(i-1)==1)
进程当时拥有CPU。例如,如果列表如下所示:
List[0] = 5
List[1] = 6
List[2] = 7
List[3] = 10
List[4] = 11
List[5] = 12
List[6] = 20
List[7] = 21
List[8] = 22
控制台的输出应该是这样的:
CPU time: 3ms
Non-CPU time: 2ms
CPU time: 3ms
Non-CPU time: 7ms
CPU time: 3ms
我怎么能这么做呢?这就是我迄今为止所做的
long ms = 1000000;
ArrayList<Long> timeStamps = new ArrayList<Long>();
long startStamp = System.nanoTime()/ms;
timeStamps.add(startStamp);
for (int i = 1; i > 0; i++) {
long nextStamp = System.nanoTime()/ms;
if(nextStamp - startStamp >= 1) {
timeStamps.add(nextStamp);
startStamp = nextStamp;
}
if(timeStamps.size() == 20) {
i = -10;
}
}
我解决了:)这就是我的意思,很抱歉,我不能准确地表达我想要的。
int time = 1;
for (int j = 1; j < timeStamps.size(); j++) {
if (timeStamps.get(j) - timeStamps.get(j -1) == 1) {
time++;
} else {
System.out.println("CPU time: " + time + " ms");
time = 1;
System.out.println("Non-CPU time: " + ((timeStamps.get(j) - timeStamps.get(j-1))-1) + " ms");
}
}
System.out.println("CPU time: " + time + " ms");
我在下面写的代码保存了进程在中拥有cpu时的时间戳。如果进程当时拥有CPU。例如,如果列表如下所示: 控制台的输出应该是这样的: 我怎么能这么做呢?这就是我迄今为止所做的
然后在main方法中,我尝试创建一个列表并打印出其中的元素。 没有语法错误,但当我尝试运行上面的代码时,终端不会返回任何内容。
问题内容: 给定一个数字列表,人们如何发现第()个元素与其第()个元素之间的差异? 使用表达式还是列表理解更好? 例如: 给定一个列表,我们的目标是要找到一个列表,因为,等等。 问题答案:
问题内容: 我有一个元素列表,例如自然数。我想将它们打印在一行中,并用一个 空格 作为分隔符。但是我 不想 在列表的最后一个元素之后(或第一个元素之前) 留 一个空格。 在Python 2中,可以使用以下代码轻松完成此操作。该语句的执行(我必须承认,这是个谜),避免在换行符前打印多余的空格。 但是,在Python 3中,似乎(使用)该函数的等效代码在最后一个数字之后产生一个空格: 当然,我的问题有
问题内容: 我正在尝试打印a的所有元素,但是它打印的是指针而不是值。 这是我的打印代码… 任何人都可以帮助我,为什么它没有体现出要素的价值。 问题答案: 这是有关打印出列表组件的一些示例: public class ListExample { } class Model { }
我对流完全陌生,目前正在尝试解决这个任务,我有以下两个列表: