回答編集履歴

1

便利な調査方法を追記

2020/05/21 02:46

投稿

nobonobo
nobonobo

スコア3367

test CHANGED
@@ -11,3 +11,43 @@
11
11
  PCの動作そのものが重くなるでしょう。この時何らかの不都合が発生することはありえます。
12
12
 
13
13
  (Goのプロセスだけでなく他のアプリのOSへのメモリ返却の機会が得られにくいなど)
14
+
15
+
16
+
17
+ ### 追記
18
+
19
+
20
+
21
+ 詳しく`runtime: out of memory`の原因を探りたい場合は以下の方法が便利です。
22
+
23
+
24
+
25
+ importとinit関数を追加しておきます。
26
+
27
+ ```go
28
+
29
+ import(
30
+
31
+ "net/http"
32
+
33
+ _ "net/http/pprof"
34
+
35
+ )
36
+
37
+
38
+
39
+ func init() {
40
+
41
+ go http.ListenAndServe(":8080", nil)
42
+
43
+ }
44
+
45
+ ```
46
+
47
+
48
+
49
+ [http://localhost:8080/debug/pprof](http://localhost:8080/debug/pprof)を開きます。
50
+
51
+
52
+
53
+ そのブラウザ画面のなかで、goroutineの数やメモリ割り当ての合計サイズなどが確認できます。