Cap'n Proto for D v0.1.2
Jay Norwood via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Wed Apr 19 11:24:46 PDT 2017
On Wednesday, 19 April 2017 at 16:52:14 UTC, Thomas Brix Larsen
wrote:
> Take a look at FileDescriptor[1]. It is a class I've added to
> support read/write using File from std.stdio. You can create a
> similar streamer using std.mmfile. I believe that this would be
> enough for memory mapped reading.
>
> [1]:
> https://github.com/ThomasBrixLarsen/capnproto-dlang/blob/master/source/capnproto/FileDescriptor.d
Ok, thanks. I took a look at several capnproto implementations
just now, and didn't see any tests for a mmap 'feature'. The
roadmap doc below indicates it doesn't exist, and perhaps there
are some details yet to be resolved to make it 'friendly' for a
mmap.
https://capnproto.org/roadmap.html
mmap-friendly mutable storage format: Define a standard storage
format that is friendly to mmap-based use while allowing
modification. (With the current serialization format, mmap is
only useful for read-only structures.) Possibly based on the ORM
interface, updates only possible at the granularity of a whole
ORM entry.
In java the MappedByteBuffer can be used with a RandomAccessFile
channel, and then the accesses of the loaded map can be random,
without requiring sequential accesses of the whole mapped file.
So java nio already has some higher level classes in place that
would make it easier to develop a first implementation of the
mmap features.
More information about the Digitalmars-d-announce
mailing list