私はコンパイルできるJavaプログラムを作成し、他のコードを実行しました(cpp、java)。私はjavaのプロセスクラスを使用してこれをやっています。プロセスクラスはg++
またはjava compiler
を呼び出します。いくつかの目的のために、私はそのプロセスの実際の実行時間と実行するコードの時間を知る必要があります。Javaプロセスの実際の実行時間を測定する方法は?
process.waitFor(2000, TimeUnit.MILLISECONDS)
このプロセスは、2000年milisecondを待っているが、2000未満milisecondで行うプロセスがどのように私が知ることができる場合は、そのプロセスにかかる時間は何ですか?
======アップデート===== 私は現在、古い方法のようにこれをやっています。
StopWatch.Start();
process.waitFor(dto.getTimeLimit(), TimeUnit.MILLISECONDS)
long timeEplased = StopWatch.Stop();
StopWatch
System.nanoTime()
を使用して、経過時間を計算し、私の記述されたクラスです。
あなたはそれを行うことができます[http://stackoverflow.com/questions/8255738/is-there-a- stopwatch-in-java)、または[this one](https://google.github.io/guava/releases/19.0/api/docs/com/google/common/base/Stopwatch.html)のような既存のツールを使用する – alfasin
@本当にアルファシン?私は現在これをやっています。賢い方法がありますか?私は今何をしているのかという質問を更新するつもりです。 – seal
「本当に? - はい。これは簡単な作業です。過度に複雑な実装でもっとも確実に終了するようにすることで、よりスマートにすることができます。それは簡単な芽を保つ。 – alfasin