Commit Graph

13 Commits

Author SHA1 Message Date
Sam Fredrickson d569bb2686 Add Gitea Actions workflow.
Build & Test / Main (push) Successful in 20s Details
2023-12-11 00:24:40 -08:00
Sam Fredrickson a20c8908de Unlock() before panic() when already closed. 2023-07-10 10:55:25 -07:00
Sam Fredrickson 9d1228988d Package queue misnamed in docstring. 2023-03-03 22:38:23 -08:00
Sam Fredrickson 0840eb9272 Add test for invalid priority levels to npq. 2023-03-03 22:34:58 -08:00
Sam Fredrickson 9f8d0760f1 Add npq package. 2023-03-03 22:20:11 -08:00
Sam Fredrickson f7474fb673 Rename package circ to queue. 2023-03-03 20:09:51 -08:00
Sam Fredrickson b00fe25128 Various improvements.
* Expand README.md, provide benchmark results.
* Add docs, benchmarks for binheap and circ packages.
* Add methods Len() and Capacity().
* Change *sync.Cond to sync.Cond.
* TryRecv() and TrySend() distinguish empty and closed errors.
* Improve test coverage.
* Add basic Makefile.
* Fix documentation mistakes.
2023-03-03 15:35:49 -08:00
Sam Fredrickson b3b491d9a9 Move priority queue to `pq` package; improve docs. 2023-03-02 01:53:12 -08:00
Sam Fredrickson 5e23a92314 Add high contention benchmark. 2023-03-01 19:31:36 -08:00
Sam Fredrickson ab364c31bb Implement a true priority queue.
* Add a binary max-heap implementation, `binheap`.
* Rename `precise` package to `mq`.
2023-03-01 19:29:15 -08:00
Sam Fredrickson 0759aaa2cd We've got a prioritized message queue, not a priority queue. 2023-03-01 13:39:19 -08:00
Sam Fredrickson c4e92faaf7 Fix wait condition and ordering in send(). 2023-03-01 01:03:31 -08:00
Sam Fredrickson 4052afa31d Initial commit. 2023-02-28 20:33:22 -08:00