shadowfacts / Forgelin

Fork of Emberwalker's Forgelin with some sprinkles on top.
Other
95 stars 30 forks source link

Coroutine Dispatchers #50

Open Bluexin opened 5 years ago

Bluexin commented 5 years ago

I plan on implementing Coroutine Dispatchers for the Minecraft main threads (was thinking about doing the Client thread and the Main/Server thread, each where applicable of course), and submitting a PR here.

However, I am not sure whether to assign one to Dispatchers.Main, which is confined to the Main thread operating with UI objects (from the docs). The reason I'm not sure is because while the doc is pretty clear about this, when we talk about the main thread in mc we're usually talking about the server thread (integrated server on single-player), which might lead to confusion.

Any thoughts?

2xsaiko commented 5 years ago

I'm pretty sure the main thread on the client is the render thread (especially since there's not always an integrated server running), and that's what I'd think of when someone says "main thread"

thecodewarrior commented 5 years ago

I feel like "main thread" is too vague. Saying simply "client" or "server" is much simpler and clearer.

I already implemented dispatchers much like this in LibLib, so you could start from there:

And usage: