fbecart / zinoma

Žinoma - Make your build flow incremental
MIT License
27 stars 2 forks source link

Run Žinoma on an event loop and leverage an actors framework #55

Closed fbecart closed 4 years ago

fbecart commented 4 years ago

Žinoma currently creates a thread per target execution. We then use crossbeam channels to exchange data between threads.

This model is not so performant, and it has some drawbacks in code clarity as well.

actix (actors) would allow Žinoma to run on a single thread (event loop). This would remove the current overhead of thread creations.

Also, with one actor per target, we could probably clean up the code of the engine core and clarify the events that are triggered within the system.

fbecart commented 4 years ago

This would help solve #53

fbecart commented 4 years ago

Tried Actix and Tokio without success.

We'll use async-std for now. Many actors frameworks can leverage async-std (bastion, xactor).