build: separate compiler and libs
This commit is contained in:
33
compiler/internal/lib/sync/pool.go
Normal file
33
compiler/internal/lib/sync/pool.go
Normal file
@@ -0,0 +1,33 @@
|
||||
// Copyright 2013 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 sync
|
||||
|
||||
import "unsafe"
|
||||
|
||||
type Pool struct {
|
||||
noCopy noCopy
|
||||
|
||||
local unsafe.Pointer // local fixed-size per-P pool, actual type is [P]poolLocal
|
||||
localSize uintptr // size of the local array
|
||||
|
||||
victim unsafe.Pointer // local from previous cycle
|
||||
victimSize uintptr // size of victims array
|
||||
|
||||
// New optionally specifies a function to generate
|
||||
// a value when Get would otherwise return nil.
|
||||
// It may not be changed concurrently with calls to Get.
|
||||
New func() any
|
||||
}
|
||||
|
||||
func (p *Pool) Put(x any) {
|
||||
}
|
||||
|
||||
// TODO(xsw):
|
||||
func (p *Pool) Get() any {
|
||||
if p.New != nil {
|
||||
return p.New()
|
||||
}
|
||||
return nil
|
||||
}
|
||||
Reference in New Issue
Block a user