23 lines
563 B
Go
23 lines
563 B
Go
// Copyright 2024 GoEdge CDN goedge.cdn@gmail.com. All rights reserved. Official site: https://goedge.cn .
|
|
//go:build plus && !darwin
|
|
|
|
package caches
|
|
|
|
import (
|
|
memutils "github.com/TeaOSLab/EdgeNode/internal/utils/mem"
|
|
"github.com/TeaOSLab/EdgeNode/internal/utils/mmap"
|
|
)
|
|
|
|
func IsValidForMMAPSize(size int64) bool {
|
|
var availableGB = int64(memutils.AvailableMemoryGB())
|
|
if availableGB < 1 {
|
|
return false
|
|
}
|
|
|
|
if mmap.TotalMMAPFileSize() > (availableGB << 27) /** 1/8 availableGB **/ {
|
|
return false
|
|
}
|
|
|
|
return size > (256<<10) && size < maxMMAPFileSize
|
|
}
|