generic_pool.go

Goマスター

Explorer

C40
C++40
C#40
Dart40
Go
初級10
中級10
上級10
エキスパート5
マスター5
context_timeout.go
generic_pool.go
worker_pool.go
reflect_map.go
sync_cache.go
Java40
JavaScript40
Kotlin40
Objective-C40
Perl40
PHP40
Python40
R40
Ruby40
Rust40
Shell40
Swift40
TypeScript40
generic_pool.go
Click to focus
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
type Pool[T any] struct {
   items chan T
}
func NewPool[T any](size int, fn func() T) *Pool[T] {
   p := &Pool[T]{items: make(chan T, size)}
   for i := 0; i < size; i++ {
       p.items <- fn()
   }
   return p
}
func (p *Pool[T]) Get() T {
   return <-p.items
}
func (p *Pool[T]) Put(v T) {
   p.items <- v
}
0WPM0%0:000/311(0%)|Ln 1, Col 1
UTF-8Go

関連する練習問題