()
| 351 | var memOnce sync.Once |
| 352 | |
| 353 | func startMemGoroutine() { |
| 354 | if !androidOutput { |
| 355 | return |
| 356 | } |
| 357 | go func() { |
| 358 | var ms runtime.MemStats |
| 359 | n := 0 |
| 360 | for { |
| 361 | runtime.ReadMemStats(&ms) |
| 362 | statMemReleased.Set(int64(ms.HeapReleased)) |
| 363 | statMemAlloc.Set(int64(ms.Alloc)) |
| 364 | statMemRSS.Set(osutil.MemUsage()) |
| 365 | time.Sleep(1 * time.Second) |
| 366 | n++ |
| 367 | if n%5 == 0 { |
| 368 | debug.FreeOSMemory() |
| 369 | } |
| 370 | } |
| 371 | }() |
| 372 | } |