annotate src/main/java/example/WriteThread.java @ 8:442463aa27e5

miss Spell revision
author one
date Tue, 01 Apr 2014 18:28:34 +0900
parents 24fca21a576e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
1 package example;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
2
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
3 import java.nio.ByteBuffer;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
4
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
5 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.Jungle;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
6 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTree;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
7 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.JungleTreeEditor;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
8 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.store.NodePath;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
9 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Either;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
10 import jp.ac.u_ryukyu.ie.cr.shoshi.jungle.util.Error;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
11 import junit.framework.Assert;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
12
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
13 public class WriteThread extends Thread {
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
14 public static final String key = "name";
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
15 public String valueString = "tatsuki";
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
16 public ByteBuffer value = ByteBuffer.wrap(valueString.getBytes());
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
17 Jungle j;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
18 NodePath childPath;
8
442463aa27e5 miss Spell revision
one
parents: 5
diff changeset
19 int loopCount;
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
20 int num;
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
21
8
442463aa27e5 miss Spell revision
one
parents: 5
diff changeset
22 WriteThread(Jungle j, NodePath childPath, int loopCount, int num) {
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
23 this.num = num;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
24 this.valueString = this.valueString + Integer.toString(num);
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
25 this.value = ByteBuffer.wrap(valueString.getBytes());
8
442463aa27e5 miss Spell revision
one
parents: 5
diff changeset
26 this.loopCount = loopCount;
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
27 this.j = j;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
28 this.childPath = childPath;
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
29 }
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
30
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
31 public void run() {
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
32 JungleTree tree = j.getTreeByName("tree");// 名前を取得
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
33 Either<Error, JungleTreeEditor> either;
8
442463aa27e5 miss Spell revision
one
parents: 5
diff changeset
34 System.out.println("loopCount = " + loopCount);
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
35 long t1 = System.currentTimeMillis();// 時間の測定開始
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
36
8
442463aa27e5 miss Spell revision
one
parents: 5
diff changeset
37 for (int count = 0; count < loopCount; count++) {
5
24fca21a576e add Read thread source
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
38 do {
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
39 JungleTreeEditor editor = tree.getTreeEditor();// Treeのeditorを作成
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
40 either = editor.putAttribute(childPath, key, value);
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
41 if (either.isA()) {
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
42 Assert.fail();
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
43 }
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
44 editor = either.b();
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
45 either = editor.success();
5
24fca21a576e add Read thread source
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents: 4
diff changeset
46 } while (either.isA());
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
47 }
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
48 long t2 = System.currentTimeMillis();
4
671a67571a48 fixed WriteThread
one
parents: 3
diff changeset
49 System.out.println(num + "番目終わり" + (t2 - t1) + "秒");
3
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
50 }
37aab24020a0 thread test
Kanagawa TATSUKI <tatsuki@ie.u-ryukyu.ac.jp>
parents:
diff changeset
51 }