Commit 08a56145 authored by Russ Cox's avatar Russ Cox

test/mapnan: use time.Now instead of syscall.Getrusage

Avoids a dependency on a somewhat nonstandard part of package syscall.

R=golang-dev, dave, r
CC=golang-dev
https://golang.org/cl/15570046
parent c8ddfd9a
...@@ -13,17 +13,13 @@ import ( ...@@ -13,17 +13,13 @@ import (
"fmt" "fmt"
"math" "math"
"time" "time"
"syscall"
) )
func main() { func main() {
// Test that NaNs in maps don't go quadratic. // Test that NaNs in maps don't go quadratic.
t := func(n int) time.Duration { t := func(n int) time.Duration {
var u0 syscall.Rusage t1 := time.Now()
if err := syscall.Getrusage(0, &u0); err != nil {
panic(err)
}
m := map[float64]int{} m := map[float64]int{}
nan := math.NaN() nan := math.NaN()
for i := 0; i < n; i++ { for i := 0; i < n; i++ {
...@@ -32,11 +28,7 @@ func main() { ...@@ -32,11 +28,7 @@ func main() {
if len(m) != n { if len(m) != n {
panic("wrong size map after nan insertion") panic("wrong size map after nan insertion")
} }
var u1 syscall.Rusage return time.Since(t1)
if err := syscall.Getrusage(0, &u1); err != nil {
panic(err)
}
return time.Duration(u1.Utime.Nano() - u0.Utime.Nano())
} }
// Depending on the machine and OS, this test might be too fast // Depending on the machine and OS, this test might be too fast
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment