Closed Jean-Luc-Picard-2021 closed 4 weeks ago
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.
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.
Not fixed yet.
The workaround was to change the error message:
{ Execution aborted (resetting dynamic database) }
So I guess this is a wont fix.
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.