From: Keith Rarick Date: Tue, 7 Dec 2010 23:06:31 +0000 (-0500) Subject: runtime: add Goroutines X-Git-Tag: weekly.2010-12-08~2 X-Git-Url: http://www.git.cypherpunks.su/?a=commitdiff_plain;h=51a218385150c44c60d3d61c7a6493a9ca342d29;p=gostls13.git runtime: add Goroutines R=rsc CC=golang-dev https://golang.org/cl/3508041 --- diff --git a/src/pkg/runtime/debug.go b/src/pkg/runtime/debug.go index b5f6571faa..3cc5472f6b 100644 --- a/src/pkg/runtime/debug.go +++ b/src/pkg/runtime/debug.go @@ -26,6 +26,9 @@ func GOMAXPROCS(n int) int // Cgocalls returns the number of cgo calls made by the current process. func Cgocalls() int64 +// Goroutines returns the number of goroutines that currently exist. +func Goroutines() int32 + type MemStatsType struct { // General statistics. // Not locked during update; approximate. diff --git a/src/pkg/runtime/proc.c b/src/pkg/runtime/proc.c index 31641ba982..ff8673a314 100644 --- a/src/pkg/runtime/proc.c +++ b/src/pkg/runtime/proc.c @@ -1192,3 +1192,10 @@ runtime·mid(uint32 ret) ret = m->id; FLUSH(&ret); } + +void +runtime·Goroutines(int32 ret) +{ + ret = runtime·sched.gcount; + FLUSH(&ret); +}