Install
dune-project
Dependency
Authors
Maintainers
Sources
sha256=cf2ad61fbbf598f2aa6cb85fbea2e554a0a1fdaaadb0c8161eccbaa1910f3b83
sha512=274c9edaf7cc9bec72afd50f366bdc7287e354485649b5c29a9c4441356e222592573b31e2b5e3e28d98253d6303a77b8c353a3345d2664e5795ae35075f9b9c
Description
This is a simple queue containing variable-length items stored on a disk, in the style of Xen shared-memory-ring.
README
shared-block-ring
A simple on-disk fixed length queue in the style of the Xen shared-memory-ring. In particular the producer and consumer APIs allow clients to control exactly when data is exposed to the consumer and removed from the queue.
Example usage
First create a "block device"-- any file will do:
dd if=/dev/zero of=test.raw bs=10240 count=1Then initialise the ring in the file:
./main.native createThen start two shells, in one run:
./main.native produceand in the other
./main.native consumeThe producer takes input from stdin and puts it onto the ring, and the consumer takes entries from the ring and prints them to stdout.
Dependencies (20)
- sexplib0
- sexplib
- rresult
- result
-
ppx_sexp_conv
>= "v0.10.0" - ppx_cstruct
- mirage-time-unix
-
mirage-time
>= "2.0.1" -
mirage-clock
>= "3.0.0" -
mirage-block-unix
>= "2.13.0" -
mirage-block
>= "3.0.0" - lwt_log
- lwt
- logs
-
io-page
>= "2.4.0" - duration
-
dune
>= "2.7.0" -
cstruct
>= "6.0.0" -
cmdliner
>= "1.1.0" -
ocaml
>= "4.06.0"
Dev Dependencies (3)
-
ounit2
with-test -
mirage-clock-unix
with-test -
bisect_ppx
dev & >= "2.5.0"
Optional Dependencies
None
Used by
None
Conflicts
None
Build status
Results of building shared-block-ring with each compiler on check.ci.ocaml.org, run of against opam-repository 8a77e58. All results for this package.
Each result links to its build log. To keep crawlers from overloading the site, build logs require a GitHub sign-in (see ocurrent/opam-health-check). On your first log, GitHub asks you to “Authorize opam-health-check”, the OCurrent app that runs these checks; it sees only your public profile, not your repositories. The sign-in lasts 30 days.
| Version | OCaml 4.11 | OCaml 4.14 | OCaml 5.2 | OCaml 5.4 | OCaml 5.5 |
|---|---|---|---|---|---|
| 3.0.1 (this version) | good | good | good | good | good |
- good Package successfully built
- partial One of the dependencies failed to build
- bad Package failed to build
- n/a Package is not available in this environment
- internal Internal failure

