JVM ??? ???? (? : Dead Code ??, JIT ???)? ??? ???? ??; 1. 2. @Benchmark ??? ???? ??? ??? ???? ?? ?? ???? ??? ????? ??????. 3. @benchmarkmode, @warmup, @measurement, @fork, @state ? ?? ??? ???? ??? ??? ????? ??????. 4. ??? ?? ?? ??? ?? JMH? ???? ?? ?? ???? ??? ?? ??? ???? ??? ? ??? ??????.
JMH (Java MicroBenchmark Harness)? ???? Java ??? ?????? ?? ??? ??? ??? ???? ???? ?? ?????. ?? ???? System.currentTimeMillis()
?? ??? ??? ????? ?? ?? ?????,? ??? JIT ???, GC, CPU ??? ? ?? ???? ?? JVM ??? ????? ?? ?? ??? ?? ??? ??? ??? ??? ?????. JMH? ??? ??? ???? ?? ??????.

? ??? ? ?? ??? ? ? ?????
JVM? ??? ???? ??? JIT ???, ??? ???, ?? ??, ?? ?? ?? ?? ?? ???? ????.
Long Start = System.NanoTime (); for (int i = 0; i <1000; i) { somemethod (); } Long End = System.NanoTime ();
JVM? someMethod()
? ??? ???? ???? ?? ?? (?? ?? ??)? ?? ????? ??? ???? 0? ??? ?? ??????. ?? ??? "??"? ??? ????.

JMH? ???? ???? ??? ??????
1. JMH ??? ?? (Maven ??)
<???> <groupid> org.openjdk.jmh </groupid> <artifactid> jmh-core </artifactid> <??> 1.37 </??> </???> <???> <groupid> org.openjdk.jmh </groupid> <artifactid> JMH-Generator-Annprocess </artifactid> <??> 1.37 </??> <Scope> ?? </scope> </???>
2. ?? ?? ??? ???? ????
@?? public void teststringconcat (Blackhole Blackhole) { ??? s = ""; for (int i = 0; i <10; i) { S = "A"; } Blackhole.consume; // ????? ??? ??} @?? public void teststringBuilder () { StringBuilder sb = new StringBuilder (); for (int i = 0; i <10; i) { sb.append ( "a"); } sb.tostring (); }
?? ?? :
-
@Benchmark
??? ???? ??? ??? ??????. -
Blackhole
???? ??? JIT? ?? ????? ?? ?????? (?? ?? ? ?? ?? ??? ???? ?? ??). - ???
public
??????. ??? ??? JMH? ??? ? ? ????.
3. ??? ??? ???? ?? ???? ??? ??????
@benchmarkmode (mode.averagetime) @outputTimeUnit (TimeUnit.NanoSeconds) @Warmup (?? = 3, time = 1, timeUnit = timeUnit.seconds) @Measurement (?? = 5, Time = 1, TimeUnit = TimeUnit.seconds) @fork (1) @state (Scope.thread) ?? ??? StringConcatBenchmark { // ??? ??? ??? ???????}
?? :

-
@BenchmarkMode
: ?? ?? (AverageTime
), ??? (Throughput
) ?? ???????. -
@Warmup
: ???? ??? JIT? ??? ??? ??? ? ? ??????. -
@Measurement
: ?? ?? ???. -
@Fork(1)
: ?? ??? ??? ?? ??? JVM ????? ??? ??? ? ???. -
@State(Scope.Thread)
: ??? ? ??? ??? ?? ??? ??? ??? ?????.
4. ?? ?? ???? ??????
??? main
??? ??????.
?? ??? jmhrunner { public static void main (string [] args)? ?? { org.openjdk.jmh.main.main (args); } }
?? ?? ?? :
MVN ?? ?? java -cp target/benchmarks.jar com.example.stringconcatbenchmark
?? IDE?? ?? main
???? ?????? (JMH ???? ?????? ??????).
???? ?? ? ?? ??
- ??? ???? ?? ??
for
???? ?? ???? . JMH? ?? ? ?? ?? ?? ???? ? ????????. -
Blackhole
???? ??? ????? . ???? ??? ????? ?? ??????. -
@Setup
?? ?? ?? ??? ????? : ??? ??? ?? ??? ?? ?. - wmartup ??? ??? ? ?????? ???? JIT ???? ??? ??? ??? ? ???? ?????.
- ? ?? ?? ? ???? ?? ???? . ??? ?????? ????? ? ??? ?? ???? ?????.
?? ?? ??
?? ?? ?? CNT ?? ?? ?? StringConcatbenchmark. TestStringConcat AVGT 5 482.3 ± 12.7 NS/OP StringConcatBenchmark. TestStringBuilder AVGT 5 32.1 ± 1.3 NS/OP
-
avgt
: ?? ?? ?? -
ns/op
: ?? ? ?? ??? -
Score
: ??,Error
: ?? ??
StringBuilder
? String ? ??? ??? ?? ?? ???? ?? ? ? ????.
????? ?? ??. JMH? ?? ??? JVM? "??"? ??? ??? ???? ???? ???? ?? ? ??????. ??? ?? ?? ? ??? ??? ? ????. ????? ??? ?? ??? ???? ?? ????.
? ??? JMH (Java Microbenchmark Harness)? Java ?? ????? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

Java? ??? ?? ??, ?? ? ??? (? : Projectreactor) ? Java19? ?? ???? ??? ??? ?????? ?????. 1. CompletableFuture? ?? ??? ?? ?? ??? ? ?? ??? ????? ?? ??????? ? ?? ??? ?????. 2. Projectreactor? ?? ? ??? ??? ???? ?? ???? ? ??? ???? ?? ? ?????? ?????. 3. ?? ???? ??? ??? ??? I/O ??? ? ??? ???? ?? ??? ????? ??? ???? ????. ? ???? ?? ??? ????? ??? ??? ??? ?? ??? ??? ?????? ???? ???? ?? ?? ??? ??????.

Java?? ??? ?? ?? ??? ???? ? ?????. ?? ???? ??? ?????. 1. ?? ?? ? ???? ??????? ?? ?? ?? ??? ???? ??? ?????. 2. ?? ??, ???, ??? ?? ?? ?? ???? ????? ?? ??? ??? ??? ?????. 3. ENUMMAP ? ENUMSET? ???? ?? ? ?? ???? ???? ??? ???? ? ?????? ?????. 4. ?? ?, ??? ?? ?? ??? ?? ????? ?? ??? ??? ?????.? ????? ?? ???? ????????. ??? ???? ???? ?? ??? ????? ??? ?? ? ??? ?? ?????? ???????.

Javanio? Java 1.4? ?? ? ??? IOAPI???. 1) ?? ? ??? ?????, 2) ??, ?? ? ??? ?? ?? ??, 3) ? ??? ??? ???? 4) ?? ??? ?? IO?? ? ????? ?????. 1) ? ?? IO? ??? ?? ??? ???, 2) ??? ??? ?? ???? ?????, 3) ???? ?????? ???? 4) ??? ?? ??? ?? ?? ? ??? ?????. 1) ??? ??/??? ??? ?? ?????, 2) ???? ???? ???? ?? ???? ???????. 3) ??? ??? ??? ???????.

Java? ????? ????? ??? ??? ?? ???? ?? ?? ??????, ?? ? ???? ? ??? ????. ?? ???? ??? ??? ???? ??? ??? ???? ?? ??? ??? ????. ???? ???? ??? ??, ?? ??? ???? ???? ?? ??? ?? ???? ?? ?????. ???? ?? ?? ??? ?? ?? ??? ?????. ?????? ?? ??? ??? ???? ?? ??? ??? ?? ??? ???? ???? ??? ?? ??? ?????? ???? ????? ??? ?? ?? ???, ?? ? ?? ???? ??? ??? ?????. ???? urlclassl? ?? ??? ??? ??? ?? ? ? ????

Java ?? ??? ??? ?? ? ??? ???? ?? ??? ???? Try-Catch? ???? ????? ????? ???? ????. 1. IoException? ?? ?? ? ??? ???? ?? ??? ??? ?? ???????. 2. NullPointerException? ?? ???? ?? ??? ????? ???? ?? ??? ?? ???? ??? ?????. 3. ??? ?? ? ?? ??? ???? ??? ??? ?? ????? ???????. 4. CODE? ?? ??? ??? ?? ??? ???? ??? ???? ??? ???? ?? ?? ????. 5. ?? ???? ??? ??? ?? ??? ??? ?? ???? ??? ???????.

?? ?? Java? ?? ???? ?? ? ? ? ????? ????, ? ??? ??? ??? ??? ???? ? ????. 1. ?? ?? hashcode () ???? ???? ?? ?? ???? ?? ??? ?? ?? ???? ?????. 2. ?? ??? ??? ?? ?? ???? ??? ??? ? ????. ?? ??? ?? ? ??? ??? ?????. JDK8 ? ?? ? ??? ?? ?? (?? ?? 8) ??? ????? ?? ???? ?? ? ??? ?????. 3. ??? ?? ???? ?? ???? ?? equals () ? hashcode () ???? ?? ???????. 4. ?? ?? ??? ???? ?????. ?? ?? ??? ???? ?? ?? (?? 0.75)? ??? ?? ? ???; 5. ?? ?? ??? ??? ??? Multithreaded?? Concu? ???????.

???? Java ?? ?? ?????? ?? ?? ? ?????. ??? "??? ?????, ?? ??"? ????. ??, ??? ? ?? ? ?? ??? ?? ?? ??? ??? ???? ?? ?? ? ?????? ?????. 1. ???? ?? ???? ?? ??? ??? ?? ? ?????, ?? ??? ??? ?? ?? ??? ?? ?????. 2. ??? ?? ??, ?? ? ?? ? ?? ??? ? ?? ??? ??????. 3. ?? ?? ?? ??? ??, ??? ?? ? ??? ?? ??? ???? ???? ? ?????. 4. ???? ?? ???? ?? ?? ? ??? ? ?? ? ? ????. ?? ???? ?? ? ??? ??? ????? ???? ??????? ?? ?????? ???????.

Java ??? ??? ???? ??? ??? ??? ?????, ???? ????, ?????? ??? ? ????. 1. ??? ????? ???? ??? ? ? ??? ?? ?? ????? ???? ? ???? ??????. 2. ???? ?? ?? ???? ??? ??? ???? ?? ?? ???? ??? ??? ? ????. 3. ???? ???? ??? ??? ?? ??? ?? ? ? ??????. 4. ?? ?? ?? ??? ? ??? ??? ?? ????? ?? ?? ??? ??? ? ????. 5. ??, ?? ?? ??, ?? ?? ?? ???, ????? ?? ?? ? ???? ??? ????? ??????.
