Mercurial > hg > Database > Christie
comparison src/main/java/christie/codegear/StartCodeGear.java @ 6:3dcfe63d6394
set type to DataGear by Annotation
author | Nozomi Teruya <e125769@ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 27 Dec 2017 00:06:50 +0900 |
parents | 5be6647b87d2 |
children | 21372a589bd3 |
comparison
equal
deleted
inserted
replaced
5:5be6647b87d2 | 6:3dcfe63d6394 |
---|---|
1 package christie.codegear; | 1 package christie.codegear; |
2 | 2 |
3 import java.util.HashMap; | 3 import java.util.HashMap; |
4 import java.util.concurrent.ConcurrentHashMap; | |
4 import java.util.concurrent.LinkedBlockingQueue; | 5 import java.util.concurrent.LinkedBlockingQueue; |
5 import java.util.concurrent.ThreadPoolExecutor; | 6 import java.util.concurrent.ThreadPoolExecutor; |
6 import java.util.concurrent.TimeUnit; | 7 import java.util.concurrent.TimeUnit; |
7 | 8 |
8 public abstract class StartCodeGear implements Runnable { | 9 public abstract class StartCodeGear implements Runnable { |
9 static HashMap<String, CodeGearManager> cgms = new HashMap<String, CodeGearManager>(); | 10 ConcurrentHashMap<String, CodeGearManager> cgms = new ConcurrentHashMap<>(); |
10 static LinkedBlockingQueue<Runnable> taskQueue = new LinkedBlockingQueue<Runnable>(); | 11 LinkedBlockingQueue<Runnable> taskQueue = new LinkedBlockingQueue<Runnable>(); |
11 static ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(Runtime.getRuntime().availableProcessors(), // initial number of threads | 12 ThreadPoolExecutor threadPoolExecutor = new ThreadPoolExecutor(Runtime.getRuntime().availableProcessors(), // initial number of threads |
12 Runtime.getRuntime().availableProcessors(), | 13 Runtime.getRuntime().availableProcessors(), |
13 Integer.MAX_VALUE, // keepAliveTime | 14 Integer.MAX_VALUE, // keepAliveTime |
14 TimeUnit.SECONDS, | 15 TimeUnit.SECONDS, |
15 taskQueue); | 16 taskQueue); |
16 | 17 |
17 public static CodeGearManager createCGM(String name){ | 18 |
19 public CodeGearManager createCGM(String name){ | |
18 CodeGearManager cgm = new CodeGearManager(threadPoolExecutor); | 20 CodeGearManager cgm = new CodeGearManager(threadPoolExecutor); |
19 cgms.put(name, cgm); | 21 cgms.put(name, cgm); |
20 return cgm; | 22 return cgm; |
21 } | 23 } |
22 | 24 |