807afe48a8
runtime.nanotime is significantly faster than time.Now. Use it unless build tags prevent usage of unsafe. Change LastUsedTime to LastUsedNanotime as a time.Time is no longer available. Add IdleDuration to make it more convenient to get the time a resource has been idle. Rename ReleaseIdle to ReleaseUnused to better indicate it is releasing the resource without using it rather than that it is releasing a resource acquired with AcquireAllIdle. Refactor tests of usage tracking to not be intermingled with AcquireAllIdle tests.
13 lines
233 B
Go
13 lines
233 B
Go
// +build !purego,!appengine,!js
|
|
|
|
// This file contains the implementation of nanotime using runtime.nanotime.
|
|
|
|
package puddle
|
|
|
|
import "unsafe"
|
|
|
|
var _ = unsafe.Sizeof(0)
|
|
|
|
//go:linkname nanotime runtime.nanotime
|
|
func nanotime() int64
|