-
Notifications
You must be signed in to change notification settings - Fork 20
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
(playground) Aborts cause state loss. #56
Comments
Thank you. This is a known limitation similar to blocking IO. Timeouts are hard without asyncify or shared array buffers because there is no way for the executing thread to know that it has been asked to abort. Asyncify should be able but we've not measured the performance impact yet. Right now aborts restart the engine. |
Works in Jan W prototype, but his prototype is still a little slow. https://dev.swi-prolog.org/wasm/shell
The version I am reporting uses a setTimout() driven auto yielding loop. example the browser stays responsive during repeat, fail, |
Thanks. Sorry, I was confused with the long thread at SWI discourse. We'll try automatic yield but if there is some serious impact on performance, we will consider also other options (maybe optionally). For some workers losing the state is not an issue. |
Now Jan W prototype got faster, but I don't have yet a live link to share. |
Not fixed yet. |
Hi,
Not sure whether this ticket is redundant to "(ciaowasm) make '$yield'/0
interact with JS async" what is seen in the commits?
There is some state loss in manual abort:
And in timeout:
https://ciao-lang.org/playground/
Expectation would be rather that this doesn't happen.
The text was updated successfully, but these errors were encountered: