dlang / project-ideas

Collection of impactful projects in the D ecosystem
36 stars 12 forks source link

std.interprocess #24

Open burner opened 5 years ago

burner commented 5 years ago

The goal of this project is to implement a flexible interprocess data structure, synchronization and communication library. An equivalent library in C++ is Boost Interprocess. The important goal would be to port all the features from boost.interprocess to D allowing the creation of structs/classes on shared memory, etc.

boost::interprocess offers the following features and it will be challenging & achieving to have these implemented in D in a stable, easy to use library that achieves all the aspects.

Get started by looking into the following:

dkgroot commented 5 years ago

Could it be that you overlooked System V / Posix IPC queue ? Any chance of including a standardized way to do RPC at the same time ?

ghost commented 5 years ago

I agree on the usefulness of an IPC project but since it's mentioned note that Iz's IPC module was actually a failure ( sync issues ) and is deactivated since a while. Just the primitives were working.

About the containers I think that maybe a types allocator could be used on the EMSI containers maybe.

CrazyPython commented 4 years ago

What if we just serialized a struct and attached TypeInfo with it? Maybe recursively copy data via pointed to by pointers too. That would let you send basic D objects.