-
Notifications
You must be signed in to change notification settings - Fork 502
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
registerCallback returning Any
considered harmful
#404
Comments
This design was chosen to eliminate the need for pmr allocation in the executor et al.
I think this could be addressed without compromising on memory management by replacing |
If you look at #402 you'll see my attempts to attach custom properties to these nodes are thwarted by unknown and mysterious forces lurking in the depths of CAVL. |
In the current design all of the places where we have
Any registerCallback(Function&&)
inhibit the ability of users to author custom executors and to integrate with various platforms. The primary issue is the method is required to move a node into an opaque container that is then moved into an unknown caller. There is no canonical key available for the implementation of registerCallback to retain. This prohibits filtering callbacks within execution stages based on type and writing event-driven rescheduling of callbacks by platform layers.We need to modify this design to use a allocation pool instead of Any types so there is only ever a single memory location containing a given callback within a process.
The text was updated successfully, but these errors were encountered: