diff options
Diffstat (limited to 'commitquery/queries_acquire.go')
| -rw-r--r-- | commitquery/queries_acquire.go | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/commitquery/queries_acquire.go b/commitquery/queries_acquire.go new file mode 100644 index 00000000..ac7b765c --- /dev/null +++ b/commitquery/queries_acquire.go @@ -0,0 +1,16 @@ +package commitquery + +func (queries *Queries) acquire() *query { + queries.mu.Lock() + defer queries.mu.Unlock() + + count := len(queries.idle) + if count == 0 { + return newQuery(queries.store, queries.graph) + } + + q := queries.idle[count-1] + queries.idle = queries.idle[:count-1] + + return q +} |
