google / google/emboss

Support Async Reads/Writes

Open
#84 0 comments 0 reactions 0 assignees View on GitHub
enhancement long-term goal
Dominant language
Python
Stars
92
Forks
30
PR merge metrics
No merged PRs in 30d

Description

C++ Emboss views are backed by a *backing storage*, which is already a template parameter, so non-RAM backing storage can be supported. (This is not currently documented, but the feature is probably complete. The Make*Foo*View() methods create views using the `emboss::ContiguousBuffer` backing storage type, which ultimately uses RAM.)

However, view types currently assume that all reads/writes are low-latency (or that it is safe to block the current thread indefinitely), and do not provide any methods for asynchronous reads or stores. For high-latency backing storage (e.g., a hardware register file accessed through SPY or MODBUS or similar), it would be useful to return a promise or a future that will eventually fulfill the read or write, and provide a notification when it is done.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.