diff --git a/.gitignore b/.gitignore index d776f6e..ec428ae 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ *.class build/ # Package Files # - +.idea/ *.war *.ear .classpath @@ -21,3 +21,4 @@ sm2/src/resource/jdbc.properties #mq *.data *.redo +.DS_Store diff --git a/Java8s/java8tests.iml b/Java8s/java8tests.iml new file mode 100644 index 0000000..0514281 --- /dev/null +++ b/Java8s/java8tests.iml @@ -0,0 +1,55 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Java8s/pom.xml b/Java8s/pom.xml index f41b1b4..bec00ba 100644 --- a/Java8s/pom.xml +++ b/Java8s/pom.xml @@ -115,6 +115,13 @@ spring-data-mongodb 1.7.0.RELEASE + + + mysql + mysql-connector-java + 8.0.23 + + src diff --git a/Java8s/src/org/luckystars/concurrent/counter/AtomitCounter.java b/Java8s/src/org/luckystars/concurrent/counter/AtomitCounter.java new file mode 100644 index 0000000..cdb8fd3 --- /dev/null +++ b/Java8s/src/org/luckystars/concurrent/counter/AtomitCounter.java @@ -0,0 +1,14 @@ +package org.luckystars.concurrent.counter; + +import java.util.concurrent.atomic.AtomicLong; + +public class AtomitCounter { + + private final AtomicLong count = new AtomicLong(0L); + + public Long countPlus(){ + return count.incrementAndGet(); + } + + +} diff --git a/Java8s/src/org/luckystars/concurrent/counter/SyncCounter.java b/Java8s/src/org/luckystars/concurrent/counter/SyncCounter.java new file mode 100644 index 0000000..118ae40 --- /dev/null +++ b/Java8s/src/org/luckystars/concurrent/counter/SyncCounter.java @@ -0,0 +1,4 @@ +package org.luckystars.concurrent.counter; + +public class SyncCounter { +} diff --git a/Java8s/src/org/luckystars/concurrent/counter/SyncInteger.java b/Java8s/src/org/luckystars/concurrent/counter/SyncInteger.java new file mode 100644 index 0000000..e2c6b8f --- /dev/null +++ b/Java8s/src/org/luckystars/concurrent/counter/SyncInteger.java @@ -0,0 +1,18 @@ +package org.luckystars.concurrent.counter; + +import org.apache.http.annotation.GuardedBy; +import org.apache.http.annotation.ThreadSafe; + +@ThreadSafe +public class SyncInteger { + @GuardedBy("this") + private int value; + + public synchronized int getValue() { + return value; + } + + public synchronized void setValue(int value) { + this.value = value; + } +} diff --git a/Java8s/src/org/luckystars/java8tests/AboutStream.java b/Java8s/src/org/luckystars/java8tests/AboutStream.java index 7b042cc..c5bac7f 100644 --- a/Java8s/src/org/luckystars/java8tests/AboutStream.java +++ b/Java8s/src/org/luckystars/java8tests/AboutStream.java @@ -16,12 +16,12 @@ import org.openjdk.jmh.runner.RunnerException; public class AboutStream { - - static List intList = + static List intList = Stream.generate(()->(int)(Math.random()*100)).limit(100).collect(Collectors.toList()); // Stream.generate(()->(int)(Math.random()*100)).limit(10000000).collect(Collectors.toList()); public static void main(String[] args) throws RunnerException { +// sun.nio.ch.FileChannelImpl; // Options opt = new OptionsBuilder() // .include(AboutStream.class.getSimpleName()) // .warmupIterations(10)