Java 如何计算消息发送到计算机和返回计算机所需的时间
我写了一些代码,将消息发送到一台计算机,然后回复,我想知道如何计算时间,将消息发送到另一台计算机然后返回需要多长时间 以下是我目前掌握的代码:Java 如何计算消息发送到计算机和返回计算机所需的时间,java,Java,我写了一些代码,将消息发送到一台计算机,然后回复,我想知道如何计算时间,将消息发送到另一台计算机然后返回需要多长时间 以下是我目前掌握的代码: import mpi.* ; class Hello { static public void main(String[] args) { MPI.Init(args) ; int myrank = MPI.COMM_WORLD.Rank(); if(myrank == 0) { char[] mess = "
import mpi.* ;
class Hello {
static public void main(String[] args) {
MPI.Init(args) ;
int myrank = MPI.COMM_WORLD.Rank();
if(myrank == 0) {
char[] mess = " Raptor" .toCharArray();
MPI.COMM_WORLD.Send(mess, 0, mess.length, MPI.CHAR, 1, 99);
} else {
char[] mess = new char [20];
MPI.COMM_WORLD.Recv(mess, 0, 20, MPI.CHAR, 0, 99);
System.out.println("received:"+new String(mess)+":");
}
MPI.Finalize();
}
}
对不起,如果这是一个简单的问题,第一次使用mpi
编辑:
现在的代码是:
import mpi.* ;
class Hello {
static public void main(String[] args) {
MPI.Init(args) ;
int myrank = MPI.COMM_WORLD.Rank();
if(myrank == 0) {
long startTime = System.nanoTime();
char[] mess = " Hello, there" .toCharArray();
MPI.COMM_WORLD.Send(mess, 0, mess.length, MPI.CHAR, 1, 99);
} else {
char[] mess = new char [20];
MPI.COMM_WORLD.Recv(mess, 0, 20, MPI.CHAR, 0, 99);
System.out.println("received:"+new String(mess)+":");
long endTime = System.nanoTime();
}
long duration = endTime - startTime;
system.out.println(duration);
MPI.Finalize();
}
}
但我现在在编译时遇到以下错误:
javac Hello.java
Hello.java:19: error: cannot find symbol
long duration = endTime - startTime;
^
symbol: variable endTime
location: class Hello
Hello.java:19: error: cannot find symbol
long duration = endTime - startTime;
^
symbol: variable startTime
location: class Hello
Hello.java:20: error: package system does not exist
system.out.println(duration);
^
3 errors
谢谢,但我现在有3个错误,我做错了什么?谢谢:),现在是完美的,对我的目标来说是很好的起点:)谢谢你在if/else块中声明了时间,并试图在它之外打印它们。
long startTime = System.nanoTime();
// send & receive
...
long endTime = System.nanoTime();
long duration = endTime - startTime;
MPI.Init(args);
int myrank = MPI.COMM_WORLD.Rank();
long startTime = System.nanoTime();
if (myrank == 0) {
...
} else {
...
}
long endTime = System.nanoTime();
long duration = endTime - startTime;