Size: a a a

2021 May 23

S

Sergey in Go-go!
компилятор ты пойми дело не в тебе дело во мне
источник

p

pragus in Go-go!
А Copy у нас именно копирует?
источник

с

сонная википедия... in Go-go!
билтин?
источник

p

pragus in Go-go!
Угу
источник

DP

Daniel Podolsky in Go-go!
Да
источник

с

сонная википедия... in Go-go!
это memmove по факту
источник

DP

Daniel Podolsky in Go-go!
Да
источник

Z

Zver in Go-go!
Чудесно. Еще бы стандартный malloc подвезли.
источник

с

сонная википедия... in Go-go!
а чем make([]byte, n) не устраивает?
источник

с

сонная википедия... in Go-go!
тем что managed by GC?
источник

Z

Zver in Go-go!
Ну делал через выделение слайса. Но по мне такое. Это все таки танец с бубном, при том что есть стандартный malloc для этого, но только не включенный в публичные пакеты.

func alloc(size int) unsafe.Pointer {
if size == 0 {
 return nil
}
size = (size + 7) / 8 // size
of int64
return unsafe.Pointer(&(make([]int64, size)[0]))
}


Так делал.
источник

S

Sergey in Go-go!
А подскажите где использовали и для чего?
источник

Z

Zver in Go-go!
источник

p

pragus in Go-go!
Я бы хотел hugepages, например. И ещё аллокацию с каким-то выравниванием.
источник

AB

Andrey Burov in Go-go!
это уже не про go
источник

p

pragus in Go-go!
почему?
источник

C

Constantine in Go-go!
потому что слова go нету )
источник

Z

Zver in Go-go!
go-hugepages
источник

C

Constantine in Go-go!
теперь другое дело )
источник

AB

Andrey Burov in Go-go!
go все же высокоуровневая штука, и разработчику не положено знать про всякие hugepages и т.п. (ну и темболее я не уверен что это на windows есть)
источник