-
-
Notifications
You must be signed in to change notification settings - Fork 8.2k
extmod/uasyncio Interface to ISR is problematic #6415
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
This is a nice example/use-case, of interfacing IRQs with a cooperative scheduler (ie uasyncio). But it has the same problems as other attempts to do this, namely that uasyncio doesn't know that the IRQ made something runnable, and also there are possible race conditions (adding the new task may occur in the middle of adding another task). In CPython I think you want to use |
On bare-metal it's possible to use |
Closing as fixed by ThreadSafeFlag. |
For reference, that’s #6886. |
Turn on f-strings for all builds in 7.3.0
This arose from this forum post. The following code sample only runs the task scheduled by the ISR when the one running task wakes up. Tested on a Pyboard 1.1 running firmware V1.13.
Given that #6106 is not merged, the problem can't be fixed with an Event.
Is there a way to interface uasyncio with an ISR other than a busy-wait loop?
The text was updated successfully, but these errors were encountered: