mirror of
https://github.com/celogeek/go-comic-converter.git
synced 2025-05-24 07:42:37 +02:00
add memory usage
This commit is contained in:
parent
a254fc446f
commit
fc6885fabc
60
main.go
60
main.go
@ -6,6 +6,7 @@ import (
|
||||
"go-comic-converter/internal/epub"
|
||||
"os"
|
||||
"path/filepath"
|
||||
"runtime"
|
||||
"strings"
|
||||
)
|
||||
|
||||
@ -53,14 +54,15 @@ func init() {
|
||||
}
|
||||
|
||||
type Option struct {
|
||||
Input string
|
||||
Output string
|
||||
Profile string
|
||||
Author string
|
||||
Title string
|
||||
Quality int
|
||||
NoCrop bool
|
||||
LimitMb int
|
||||
Input string
|
||||
Output string
|
||||
Profile string
|
||||
Author string
|
||||
Title string
|
||||
Quality int
|
||||
NoCrop bool
|
||||
LimitMb int
|
||||
PrintMem bool
|
||||
}
|
||||
|
||||
func (o *Option) String() string {
|
||||
@ -80,14 +82,15 @@ func (o *Option) String() string {
|
||||
return fmt.Sprintf(`Go Comic Converter
|
||||
|
||||
Options:
|
||||
Input : %s
|
||||
Output : %s
|
||||
Profile: %s - %s - %dx%d
|
||||
Author : %s
|
||||
Title : %s
|
||||
Quality: %d
|
||||
Crop : %v
|
||||
LimitMb: %s
|
||||
Input : %s
|
||||
Output : %s
|
||||
Profile : %s - %s - %dx%d
|
||||
Author : %s
|
||||
Title : %s
|
||||
Quality : %d
|
||||
Crop : %v
|
||||
LimitMb : %s
|
||||
PrintMem: %v
|
||||
`,
|
||||
o.Input,
|
||||
o.Output,
|
||||
@ -100,6 +103,27 @@ Options:
|
||||
o.Quality,
|
||||
!o.NoCrop,
|
||||
limitmb,
|
||||
o.PrintMem,
|
||||
)
|
||||
}
|
||||
|
||||
func PrintMemUsage() {
|
||||
var m runtime.MemStats
|
||||
runtime.ReadMemStats(&m)
|
||||
|
||||
bToMb := func(b uint64) uint64 { return b / 1024 / 1024 }
|
||||
|
||||
// For info on each, see: https://golang.org/pkg/runtime/#MemStats
|
||||
fmt.Printf(`Memory Usage:
|
||||
Alloc : %v MiB
|
||||
TotalAlloc: %v MiB
|
||||
Sys : %v MiB
|
||||
NumGC : %v
|
||||
`,
|
||||
bToMb(m.Alloc),
|
||||
bToMb(m.TotalAlloc),
|
||||
bToMb(m.Sys),
|
||||
m.NumGC,
|
||||
)
|
||||
}
|
||||
|
||||
@ -123,6 +147,7 @@ func main() {
|
||||
flag.IntVar(&opt.Quality, "quality", 85, "Quality of the image")
|
||||
flag.BoolVar(&opt.NoCrop, "nocrop", false, "Disable cropping")
|
||||
flag.IntVar(&opt.LimitMb, "limitmb", 0, "Limit size of the ePub: Default nolimit (0), Minimum 20")
|
||||
flag.BoolVar(&opt.PrintMem, "printmem", false, "Print memory usage")
|
||||
flag.Parse()
|
||||
|
||||
if opt.Input == "" {
|
||||
@ -183,5 +208,8 @@ func main() {
|
||||
os.Exit(1)
|
||||
}
|
||||
|
||||
if opt.PrintMem {
|
||||
PrintMemUsage()
|
||||
}
|
||||
os.Exit(0)
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user