/
/
opt
/
golang
/
1.19.4
/
src
/
runtime
Server: in-mum-web1112.main-hosting.eu (62.72.28.111)
You: 216.73.216.137
PHP 8.3.16
Dir:
/opt/golang/1.19.4/src/runtime
Edit:
/opt/golang/1.19.4/src/runtime/closure_test.go
// Copyright 2011 The Go Authors. All rights reserved. // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. package runtime_test import "testing" var s int func BenchmarkCallClosure(b *testing.B) { for i := 0; i < b.N; i++ { s += func(ii int) int { return 2 * ii }(i) } } func BenchmarkCallClosure1(b *testing.B) { for i := 0; i < b.N; i++ { j := i s += func(ii int) int { return 2*ii + j }(i) } } var ss *int func BenchmarkCallClosure2(b *testing.B) { for i := 0; i < b.N; i++ { j := i s += func() int { ss = &j return 2 }() } } func addr1(x int) *int { return func() *int { return &x }() } func BenchmarkCallClosure3(b *testing.B) { for i := 0; i < b.N; i++ { ss = addr1(i) } } func addr2() (x int, p *int) { return 0, func() *int { return &x }() } func BenchmarkCallClosure4(b *testing.B) { for i := 0; i < b.N; i++ { _, ss = addr2() } }
Ukuran: 937 B