Documentation ¶
Index ¶
- Constants
- Variables
- func Breakpoint()
- func Caller(skip int) (pc uintptr, file string, line int, ok bool)
- func Callers(skip int, pc []uintptr) int
- func GC()
- func GOMAXPROCS(int) int
- func GOROOT() string
- func Goexit()
- func Gosched()
- func KeepAlive(interface{})
- func LockOSThread()
- func NumCPU() int
- func NumCgoCall() int64
- func NumGoroutine() int
- func ParseCallFrame(info *js.Object) basicFrame
- func ReadMemStats(m *MemStats)
- func ReadTrace() []byte
- func SetBlockProfileRate(rate int)
- func SetFinalizer(x, f interface{})
- func SetMutexProfileFraction(rate int) int
- func Stack(buf []byte, all bool) int
- func StartTrace() error
- func StopTrace()
- func UnlockOSThread()
- func Version() string
- type Error
- type Frame
- type Frames
- type Func
- type MemStats
- type TypeAssertionError
Constants ¶
const Compiler = "gopherjs"
const GOARCH = "ecmascript"
const GOOS = "js"
Variables ¶
var MemProfileRate int = 512 * 1024
Functions ¶
func Breakpoint ¶
func Breakpoint()
func Callers ¶
Callers fills the slice pc with the return program counters of function invocations on the calling goroutine's stack. The argument skip is the number of stack frames to skip before recording in pc, with 0 identifying the frame for Callers itself and 1 identifying the caller of Callers. It returns the number of entries written to pc.
The returned call stack represents the logical Go call stack, which excludes certain runtime-internal call frames that would be present in the raw JavaScript stack trace. This is done to improve interoperability with the upstream Go. Use JavaScript native APIs to access the raw call stack.
To translate these PCs into symbolic information such as function names and line numbers, use CallersFrames. CallersFrames accounts for inlined functions and adjusts the return program counters into call program counters. Iterating over the returned slice of PCs directly is discouraged, as is using FuncForPC on any of the returned PCs, since these cannot account for inlining or return program counter adjustment.
func GOMAXPROCS ¶
func LockOSThread ¶
func LockOSThread()
func NumCgoCall ¶
func NumCgoCall() int64
We fake a cgo environment to catch errors. Therefor we have to implement this and always return 0
func NumGoroutine ¶
func NumGoroutine() int
func ParseCallFrame ¶
ParseCallFrame is exported for the sake of testing. See this discussion for context https://github.com/gopherjs/gopherjs/pull/1097/files/561e6381406f04ccb8e04ef4effedc5c7887b70f#r776063799
TLDR; never use this function!
func ReadMemStats ¶
func ReadMemStats(m *MemStats)
func SetBlockProfileRate ¶
func SetBlockProfileRate(rate int)
func SetFinalizer ¶
func SetFinalizer(x, f interface{})
func SetMutexProfileFraction ¶
func Stack ¶
Stack formats a stack trace of the calling goroutine into buf and returns the number of bytes written to buf. If all is true, Stack formats stack traces of all other goroutines into buf after the trace for the current goroutine.
Unlike runtime.Callers(), it returns an unprocessed, runtime-specific text representation of the JavaScript stack trace.
func StartTrace ¶
func StartTrace() error
func UnlockOSThread ¶
func UnlockOSThread()
Types ¶
type Error ¶
type Error interface { error // RuntimeError is a no-op function but // serves to distinguish types that are run time // errors from ordinary errors: a type is a // run time error if it has a RuntimeError method. RuntimeError() }
The Error interface identifies a run time error.
type MemStats ¶
type MemStats struct { // General statistics. Alloc uint64 // bytes allocated and still in use TotalAlloc uint64 // bytes allocated (even if freed) Sys uint64 // bytes obtained from system (sum of XxxSys below) Lookups uint64 // number of pointer lookups Mallocs uint64 // number of mallocs Frees uint64 // number of frees // Main allocation heap statistics. HeapAlloc uint64 // bytes allocated and still in use HeapSys uint64 // bytes obtained from system HeapIdle uint64 // bytes in idle spans HeapInuse uint64 // bytes in non-idle span HeapReleased uint64 // bytes released to the OS HeapObjects uint64 // total number of allocated objects // Low-level fixed-size structure allocator statistics. // Inuse is bytes used now. // Sys is bytes obtained from system. StackInuse uint64 // bytes used by stack allocator StackSys uint64 MSpanInuse uint64 // mspan structures MSpanSys uint64 MCacheInuse uint64 // mcache structures MCacheSys uint64 BuckHashSys uint64 // profiling bucket hash table GCSys uint64 // GC metadata OtherSys uint64 // other system allocations // Garbage collector statistics. NextGC uint64 // next collection will happen when HeapAlloc ≥ this amount LastGC uint64 // end time of last collection (nanoseconds since 1970) PauseTotalNs uint64 PauseNs [256]uint64 // circular buffer of recent GC pause durations, most recent at [(NumGC+255)%256] PauseEnd [256]uint64 // circular buffer of recent GC pause end times NumGC uint32 GCCPUFraction float64 // fraction of CPU time used by GC EnableGC bool DebugGC bool // Per-size allocation statistics. // 61 is NumSizeClasses in the C code. BySize [61]struct { Size uint32 Mallocs uint64 Frees uint64 } }
type TypeAssertionError ¶
type TypeAssertionError struct {
// contains filtered or unexported fields
}
A TypeAssertionError explains a failed type assertion.
func (*TypeAssertionError) Error ¶
func (e *TypeAssertionError) Error() string
func (*TypeAssertionError) RuntimeError ¶
func (*TypeAssertionError) RuntimeError()