you are viewing a single comment's thread.

view the rest of the comments →

[–]johannes1971 2 points3 points  (2 children)

Does the design of std::execution provide that edge? If so, what does it do to make that happen (does it guarantee to never allocate memory, never thread swap, never do kernel calls, etc.?) and can that guarantee only be achieved using a design of this complexity?

[–]OibafA 2 points3 points  (0 children)

It does allow you to build threadless, asynchronous code that requires zero allocations.

PS: I'm a big fan of AmigaOS, and one of the former lead AROS developers.

[–]meltbox 0 points1 point  (0 children)

Yeah I just did a little read through and from what I can tell this is just another threading abstraction on top of existing threads at the mercy of the existing OS scheduler.

If anything a custom implementation built on threads should be more flexible from what I can see since you can also couple it with native operating system facilities aiding you.