github.com/zhuohuang-hust/src-cbuild@v0.0.0-20230105071821-c7aab3e7c840/mergeCode/libnetwork/cmd/dnet/dnet_windows.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "os" 6 "syscall" 7 8 "github.com/Sirupsen/logrus" 9 "github.com/docker/docker/pkg/signal" 10 "github.com/docker/docker/pkg/system" 11 ) 12 13 // Copied over from docker/daemon/debugtrap_windows.go 14 func setupDumpStackTrap() { 15 go func() { 16 sa := syscall.SecurityAttributes{ 17 Length: 0, 18 } 19 ev := "Global\\docker-daemon-" + fmt.Sprint(os.Getpid()) 20 if h, _ := system.CreateEvent(&sa, false, false, ev); h != 0 { 21 logrus.Debugf("Stackdump - waiting signal at %s", ev) 22 for { 23 syscall.WaitForSingleObject(h, syscall.INFINITE) 24 signal.DumpStacks("") 25 } 26 } 27 }() 28 }