Исходники и презентации

This commit is contained in:
2025-05-23 07:26:39 +03:00
parent aa948179d5
commit 02d8430a3a
514 changed files with 13773 additions and 0 deletions

View File

@ -0,0 +1,26 @@
package main
import (
"fmt"
"unsafe"
)
// For memory blocks larger than 32768 bytes,
// each of them is always composed of multiple
// memory pages. The memory page size used by the
// official standard Go runtime (1.22 versions) is 8192 bytes.
func main() {
var data1 [32769]byte
var data2 [32769]byte
data1Pointer := unsafe.Pointer(&data1)
data2Pointer := unsafe.Pointer(&data2)
fmt.Println("adress:", data1Pointer, data2Pointer)
fmt.Println("size:", unsafe.Sizeof(data1), unsafe.Sizeof(data2))
distance := uintptr(data2Pointer) - uintptr(data1Pointer)
fmt.Println("distance:", distance)
fmt.Println("waste:", distance-unsafe.Sizeof(data1))
}