Blocking send with result with new IP drivers? #3646
Replies: 1 comment 4 replies
-
|
Oversight on our end to have missed that on the release notes, I'll add something. The rationale for this was to make the interface agnostic to whether the driver is able to provide synchronous writes, or if it replies with a status asynchronously. Components interfacing with the interface have to handle the return of the status (as well as ownership of the sent buffer). This makes components in core F´ that interface with a ByteStreamDriver more reusable, as they won't need changing should the driver be asynchronous. The other change is to align better with the "buffer return" pattern that we're trying to adhere to in core F´ components, where buffers that come out of a component (that may have been allocated) are expected to return to it, so the component itself can handle potential memory allocations/deallocations, and the topology doesn't have memory-allocation-roundabouts where you need to know where to enter and exit, like we had before (see these changes for reference) Let me know if you have feedback |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello,
I see that the way that ByteStreamDrivers work has changed in 4.0.0a1. It would be nice if there were a clear explanation of the difference somewhere. I checked the release notes and the PR description and could not find an explanation of the change or the rationale.
It seems that now the send port does not directly return a send status, instead we have to receive that send status on a separate port.
Is there still a way to make a blocking send, and get the status of that send in the same method?
Beta Was this translation helpful? Give feedback.
All reactions