Mercurial > hg > Database > Alice
comparison src/alice/test/codesegment/local/wordcount/SeparateArray.java @ 248:913ee9dfec4f
add recycle method
author | sugi |
---|---|
date | Wed, 29 May 2013 15:39:55 +0900 |
parents | 6f8236208875 |
children |
comparison
equal
deleted
inserted
replaced
247:6e042fde5662 | 248:913ee9dfec4f |
---|---|
7 import java.io.IOException; | 7 import java.io.IOException; |
8 import java.io.InputStreamReader; | 8 import java.io.InputStreamReader; |
9 import alice.codesegment.CodeSegment; | 9 import alice.codesegment.CodeSegment; |
10 | 10 |
11 public class SeparateArray extends CodeSegment{ | 11 public class SeparateArray extends CodeSegment{ |
12 | |
13 private WordConfig conf; | 12 private WordConfig conf; |
14 | 13 |
15 SeparateArray(WordConfig conf){ | 14 SeparateArray(WordConfig conf){ |
16 this.conf = conf; | 15 this.conf = conf; |
17 } | 16 } |
18 | 17 |
19 @Override | 18 @Override |
20 public void run() { | 19 public void run() { |
21 | |
22 // cpu分だけTaskをあらかじめ作成 | 20 // cpu分だけTaskをあらかじめ作成 |
23 int cpu_num = Runtime.getRuntime().availableProcessors(); | 21 int cpu_num = Runtime.getRuntime().availableProcessors(); |
24 for (int cnt =0;cnt < cpu_num;cnt++){ | 22 for (int cnt =0;cnt < cpu_num;cnt++){ |
25 new WordCount(); | 23 new WordCount(); |
26 } | 24 } |
27 | |
28 BufferedReader br = null; | 25 BufferedReader br = null; |
29 int i = 0; | 26 int i = 0; |
30 try { | 27 try { |
31 br= new BufferedReader( | 28 br= new BufferedReader( |
32 new InputStreamReader( | 29 new InputStreamReader( |
34 new File(conf.filename) | 31 new File(conf.filename) |
35 ))); | 32 ))); |
36 int size = conf.division * 1024; // Kbyte | 33 int size = conf.division * 1024; // Kbyte |
37 Range range = new Range(size); | 34 Range range = new Range(size); |
38 int check = br.read(range.array); | 35 int check = br.read(range.array); |
39 for (;check!=-1;i++){ | 36 for (;check!=-1;i++){ |
40 | |
41 char[] array; | 37 char[] array; |
42 array = new char[size]; | 38 array = new char[size]; |
43 check = br.read(array); | 39 check = br.read(array); |
44 range.nextchar = array[0]; | 40 range.nextchar = array[0]; |
45 ods.put("array", range); | 41 ods.put("array", range); |