v / vlib / runtime / used_memory_test.v
24 lines · 20 sloc · 579 bytes · c3dfe62d7b3ee8bc288f943782644263e36bbbba
Raw
1import runtime
2
3fn test_used_memory() {
4 used1 := runtime.used_memory()!
5 println('used memory 1 : ${used1}')
6
7 mut mem1 := unsafe { malloc(8 * 1024 * 1024) }
8 unsafe { vmemset(mem1, 1, 8 * 1024 * 1024) }
9 used2 := runtime.used_memory()!
10 println('used memory 2 : ${used2}')
11
12 mut mem2 := unsafe { malloc(64 * 1024 * 1024) }
13 unsafe { vmemset(mem2, 1, 64 * 1024 * 1024) }
14 used3 := runtime.used_memory()!
15 println('used memory 3 : ${used3}')
16
17 assert used1 > 0
18 assert used2 >= used1
19 assert used3 > used2
20 unsafe {
21 println(*&u8(mem1 + 1024))
22 println(*&u8(mem2 + 1024))
23 }
24}
25