java 不是被调用多次的短流程吗?
Is java not to be used for short processes that are called many times?
简介
我打算在Java中写一个算法(这样我就可以学习这门语言)运行时间应该在几秒钟左右。这个小算法将从 bash.
被调用大约 10,000 次
问题
Java 每次调用进程都会进行优化,即使通过 bash for 循环调用 10,000 次,是否正确?
我的代码可能会占用大约 2000 行和 运行 大约 5 秒。您认为执行优化的时间与 运行ning 时间相比可以忽略不计吗?
有没有办法计算一次优化(就像在 C++ 中一样)?
难道java不是用来调用多次的短流程吗?
很难预测在运行时会发生什么优化,但如果每次调用都重新启动该进程并且只运行几秒钟,那么它几乎不会产生任何影响。编译式优化不会受到影响,但运行时优化可能会受到影响。然而,JVM本身的启动时间将压倒任何好处。
此外,如果程序本身很小并且算法正确,运行时优化器可能几乎无能为力。
现阶段的微优化效果不佳。您是否有 任何 测量过程的每个部分需要多长时间?如果没有,您怎么知道是否有任何努力有帮助,甚至哪里有瓶颈?
在这种情况下,最好的办法是消除 JVM 启动时间这一因素。例如,将您的 Java 程序设置为服务器并通过服务调用从 shell 脚本调用它。程序最慢的部分消失了,JVM 可以累积多次使用的统计信息。
简介
我打算在Java中写一个算法(这样我就可以学习这门语言)运行时间应该在几秒钟左右。这个小算法将从 bash.
被调用大约 10,000 次问题
Java 每次调用进程都会进行优化,即使通过 bash for 循环调用 10,000 次,是否正确?
我的代码可能会占用大约 2000 行和 运行 大约 5 秒。您认为执行优化的时间与 运行ning 时间相比可以忽略不计吗?
有没有办法计算一次优化(就像在 C++ 中一样)?
难道java不是用来调用多次的短流程吗?
很难预测在运行时会发生什么优化,但如果每次调用都重新启动该进程并且只运行几秒钟,那么它几乎不会产生任何影响。编译式优化不会受到影响,但运行时优化可能会受到影响。然而,JVM本身的启动时间将压倒任何好处。
此外,如果程序本身很小并且算法正确,运行时优化器可能几乎无能为力。
现阶段的微优化效果不佳。您是否有 任何 测量过程的每个部分需要多长时间?如果没有,您怎么知道是否有任何努力有帮助,甚至哪里有瓶颈?
在这种情况下,最好的办法是消除 JVM 启动时间这一因素。例如,将您的 Java 程序设置为服务器并通过服务调用从 shell 脚本调用它。程序最慢的部分消失了,JVM 可以累积多次使用的统计信息。