vlingo-net / xoom-net-common

These are just a few common tools shared across various vlingo .NET projects.
Mozilla Public License 2.0
7 stars 9 forks source link

Reimplementing BasicCompletes with continuations #43

Closed tjaskula closed 4 years ago

tjaskula commented 4 years ago

Related to #42.

This is the work in progress, please don't review it now.

tjaskula commented 4 years ago

@VaughnVernon @zpbappi I think the advanced draft of the new BasicCompletes implementations is ready. I've renamed the old implementation and related interfaces to with OLD suffix. So don't review those files.

There are still some work to do:

I know it's not easy to review if the logic is good (UT are for that), but I'd appreciate your feedback on design and especially on UT cases. As for design I have an idea of how to refactor this with passing function so it could be simplified, but this will be as a last step.

If everything works I'll release it soon.

tjaskula commented 4 years ago

@VaughnVernon I'm generating the local nugget packages for tests and there are few issues I detected on Actors, so it's not ready to merge yet. The issues I noticed is that sometimes the execution of first BasicCompletes finishes before the registration is done. So I need like on the old version to try to execute immediately.

tjaskula commented 4 years ago

@VaughnVernon I have all tests green on vlingo-net-actors with the new implementation. Good news however I need to do some minor tricks before merging.

VaughnVernon commented 4 years ago

I need to do some minor tricks before merging.

No one understands how complex this is until they try to implement it :)

tjaskula commented 4 years ago

Yes, there are many cases to consider already in the basic implementation, but once you add on top of that the threading and actors...it's another level :)