Jump to content
  • Sky
  • Blueberry
  • Slate
  • Blackcurrant
  • Watermelon
  • Strawberry
  • Orange
  • Banana
  • Apple
  • Emerald
  • Chocolate
  • Charcoal

Archived

This topic is now archived and is closed to further replies.

  • 0
Varscott11

Yield a coroutine from outside of child function for a scheduler

Question

I'm working on a multi-tasking thread scheduler that is in charge of executing a coroutine for a certain time, and then yielding it and moving to the next coroutine. This is where a problem arises. I cannot yield the coroutine from outside of the function. If I cannot use a C hook to do this in Open Computers, then how could I go about this?

Share this post


Link to post
Share on other sites

1 answer to this question

Recommended Posts

simply put, you cannot.

All threading must be cooperative; everyone must yield on their own.

However, you should know that OpenOS now has threads!  [  in case you are wondering how, threads intercept yields and computer.pullSignal and hide the cooperative layer from the user  ]

There is actually quite a lot that went into developing threads for OpenOS. Please consider the wiki doc I wrote up about them, and please provide feedback and questions! Any issues or bugs you run into, please use github to create a new issue.

http://ocdoc.cil.li/api:thread

 

Share this post


Link to post
Share on other sites

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use and Privacy Policy.