mirror of
https://github.com/ScuroNeko/mtg.git
synced 2026-09-01 01:54:02 +03:00
FILE / ScuroNeko/mtg
mtglib/internal/obfuscated2/pools.go
Исходный файл и его история в репозитории.
Anyway, we are going to use stack here, no need for connection pooling. Even arrays are allocaed on a stack because we do not use slices here but real ones.
23 lines
319 B
Go
23 lines
319 B
Go
package obfuscated2
|
|
|
|
import (
|
|
"crypto/sha256"
|
|
"hash"
|
|
"sync"
|
|
)
|
|
|
|
var sha256HasherPool = sync.Pool{
|
|
New: func() interface{} {
|
|
return sha256.New()
|
|
},
|
|
}
|
|
|
|
func acquireSha256Hasher() hash.Hash {
|
|
return sha256HasherPool.Get().(hash.Hash)
|
|
}
|
|
|
|
func releaseSha256Hasher(h hash.Hash) {
|
|
h.Reset()
|
|
sha256HasherPool.Put(h)
|
|
}
|