Core is both a reactor and the executor, so decoupling readiness monitoring and execution is not built-in. In addition, the futures that run on it have no special threading needs (ie no
Sync requirement). As such, a future on a reactor is really confined to it. You can start a
Core per thread and get multiple event loops running. With the Tokio reform, there’s discussion about splitting the reactor and executor responsibilities so this will likely get easier.
select a tcp socket future and a tokio-process future and run the combo on the same reactor. But,
Core::run returns when the future given to it resolves. In the
TcpListener case that future usually never resolves - it’s essentially an infinite loop of
accept calls. In the tokio-process case I guess it depends on when the proc completes, which is usecase dependent of course.
In your scenario, how do the tcp and process pipelines interact in the grand scheme of things?