|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC 08/59] controller: Exit after second SIGINT
From: George Dunlap <george.dunlap@xxxxxxxxxx>
Otherwise you have to kill -9 the process.
Signed-off-by: George Dunlap <george.dunlap@xxxxxxxxxx>
---
main.go | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)
diff --git a/main.go b/main.go
index 04c8467..dbd6276 100644
--- a/main.go
+++ b/main.go
@@ -62,6 +62,8 @@ func (ws *WorkerList) Start(report chan WorkerReport, done
chan bool) {
}
func main() {
+ killed := false
+
count := 2
report := make(chan WorkerReport)
@@ -92,9 +94,15 @@ func main() {
i--;
fmt.Println(i, "workers left");
case <-signals:
- fmt.Println("SIGINT receieved, shutting down workers")
- for j := range Workers {
- Workers[j].w.Shutdown()
+ if ! killed {
+ fmt.Println("SIGINT receieved, shutting down
workers")
+ for j := range Workers {
+ Workers[j].w.Shutdown()
+ }
+ killed = true
+ } else {
+ fmt.Println("Second SIGINT received, exiting
without cleaning up")
+ os.Exit(1)
}
}
}
--
2.7.4
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |