-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Closed
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.
Milestone
Description
Please answer these questions before submitting your issue. Thanks!
What version of Go are you using (go version
)?
go1.9.1
Does this issue reproduce with the latest release?
yes. every release.
What operating system and processor architecture are you using (go env
)?
GOARCH=amd64
GOBIN=C:\Go\bin
GOEXE=.exe
GOHOSTARCH=amd64
GOHOSTOS=windows
GOOS=windows
GOPATH=D:\golang
GORACE=
GOROOT=C:\Go
GOTOOLDIR=C:\Go\pkg\tool\windows_amd64
GCCGO=gccgo
CC=gcc
GOGCCFLAGS=-m64 -fmessage-length=0 -fdebug-prefix-map=C:\Users\zhalei\AppData\Local\Temp\go-build309785515=/tmp/go-build -gno-record-gcc-switches
CXX=g++
CGO_ENABLED=1
PKG_CONFIG=pkg-config
CGO_CFLAGS=-g -O2
CGO_CPPFLAGS=
CGO_CXXFLAGS=-g -O2
CGO_FFLAGS=-g -O2
CGO_LDFLAGS=-g -O2
What did you do?
Write codes for test GC of golang.
Here is what i use to test.
package main
import "fmt"
import "time"
type Node struct {
next *Node
payload [64]byte
}
func main() {
root := new(Node)
curr := root
i := 0
lastTime := time.Now()
for {
currTime := time.Now()
elapsed := currTime.Sub(lastTime)
lastTime = currTime
// 10ms = 10000000ns
if elapsed > 10000000 {
fmt.Println("StopTime:", elapsed)
}
curr.next = new(Node)
curr = curr.next
i++
//3000 nodes max
if i >= 3000 {
i = 0
root = curr
}
}
}
What did you expect to see?
the program run well.
What did you see instead?
memory never be released until everything stop work. and then, i take my pc
power off. -_-
darasion
Metadata
Metadata
Assignees
Labels
FrozenDueToAgeNeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.Someone must examine and confirm this is a valid issue and not a duplicate of an existing one.