質問編集履歴
2
わかりやすく修正
test
CHANGED
File without changes
|
test
CHANGED
@@ -4,7 +4,7 @@
|
|
4
4
|
|
5
5
|
原因がわからないため、解決策を教えていただきたいです。
|
6
6
|
|
7
|
-
|
7
|
+
よろしくお願いします。
|
8
8
|
|
9
9
|
```Java
|
10
10
|
|
1
ソースにコメント
test
CHANGED
File without changes
|
test
CHANGED
@@ -24,6 +24,10 @@
|
|
24
24
|
|
25
25
|
final DataSnapshotWrapper snapshotWrapper = new DataSnapshotWrapper();
|
26
26
|
|
27
|
+
|
28
|
+
|
29
|
+
//非同期処理のカウント変数(初期値が1)
|
30
|
+
|
27
31
|
final CountDownLatch latch = new CountDownLatch(1);
|
28
32
|
|
29
33
|
|
@@ -39,6 +43,10 @@
|
|
39
43
|
DatabaseReference subRef;
|
40
44
|
|
41
45
|
snapshotWrapper.snapshot = dataSnapshot;
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
//データ処理が完了したのでカウントを一つ減らす。
|
42
50
|
|
43
51
|
latch.countDown();
|
44
52
|
|
@@ -68,6 +76,10 @@
|
|
68
76
|
|
69
77
|
System.out.println("Prelatch");
|
70
78
|
|
79
|
+
|
80
|
+
|
81
|
+
//カウントダウン変数(latch)が0になるまで(上記の非同期処理が完了したら)待機
|
82
|
+
|
71
83
|
latch.await();
|
72
84
|
|
73
85
|
System.out.println("Returning from latch");
|