[Cuis-dev] Freezing UI - can't interrupt via Alt+.
Juan Vuletich
JuanVuletich at zoho.com
Sat Jul 2 12:55:10 PDT 2022
Hi Jaromir,
I think it is fair to say that if the debugger needs to open, there must
be a runnable UI process. Just pushed #5347 for that.
I just think that nobody in the Cuis / Squeak community thought about
that before.
Thanks!!!
Cheers,
On 7/2/2022 6:03 AM, Jaromir Matas via Cuis-dev wrote:
>
> Hi Juan,
>
> the update indeed works, thanks!
>
> An observation though: if you do:
>
> 1) Semaphore new wait
>
> 2) Alt+.
>
> 3) Proceed
>
> It disrupts the screen and 'restore display' from the World menu is
> needed; nothing serious, just reporting because I don't know whether
> this is to be expected or not :)
>
> There's one issue I'd very much like to discuss:
>
> s := Semaphore new.
>
> [1/0. s signal] fork.
>
> s wait
>
> When I first ran this example I kind of hoped the UI would not freeze
> and would open a debugger on the ZeroDivide. I can't see any reason
> why not behave like that but both Squeak and Cuis freeze because the
> UI waits on the semaphore and the forked process requests the UI to
> open a debugger but the UI is stuck at the semaphore :)
>
> My expectation was the system would spawn a new UI that would open the
> debugger but I have no experience with UIs and debuggers and can
> imagine it may be very tricky :)
>
> I'd be very interested in your opinion how the above example
> could/should be handled by the UI.
>
> Of course if you run the example in a non-UI process it works as
> expected but it'd be nice I guess if running it in the UI would behave
> similarly :)
>
> [s := Semaphore new.
>
> [1/0. s signal] fork.
>
> s wait] fork
>
> Many thanks!
>
> Jaromir
>
> --
>
> *Jaromír Matas*
>
> mail at jaromir.net
>
> *From: *Juan Vuletich <mailto:JuanVuletich at zoho.com>
> *Sent: *Saturday, July 2, 2022 1:54
> *To: *Discussion of Cuis Smalltalk <mailto:cuis-dev at lists.cuis.st>
> *Cc: *Juan Vuletich <mailto:JuanVuletich at zoho.com>; Jaromir Matas
> <mailto:mail at jaromir.net>
> *Subject: *Re: [Cuis-dev] Freezing UI - can't interrupt via Alt+.
>
> On 7/1/2022 9:45 AM, Juan Vuletich via Cuis-dev wrote:
>
> On 7/1/2022 8:17 AM, Jaromir Matas via Cuis-dev wrote:
>
> Hi Juan, all,
>
> I wonder why this can’t be interrupted by Alt+.
>
> Semaphore new wait
>
> The system returns a message “Can not interrupt background
> process” and the image has to be closed.
>
> The same happens in this case:
>
> s := Semaphore new.
>
> [1/0. s signal] fork.
>
> s wait
>
> It not only freezes the UI but is not even recoverable…
>
> Thanks,
>
> jaromir
>
> --
>
> *Jaromír Matas*
>
> mail at jaromir.net <mailto:mail at jaromir.net>
>
>
> Hi Jaromir,
>
> The problem is in #handleUserInterrupt, in particular in
> #processTakingMostCPU. #handleUserInterrupt runs on a high
> priority process, so the first thing it needs to figure out is
> which process to interrupt. I wrote that code believing that alt+.
> would need to interrupt busy code, and it works in that case. It
> doesn't work if the UI process is waiting and never resumed, as it
> is not "busy".
>
> We need to do better here. I won't be able to work on this for the
> next few days, but would be very happy if any of you folks suggest
> / code a solution.
>
> Thanks,
>
> --
>
> Juan Vuletich
>
> www.cuis-smalltalk.org <http://www.cuis-smalltalk.org>
>
> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
>
> https://github.com/jvuletich
>
> https://www.linkedin.com/in/juan-vuletich-75611b3
>
> https://independent.academia.edu/JuanVuletich
>
> https://www.researchgate.net/profile/Juan-Vuletich
>
> https://patents.justia.com/inventor/juan-manuel-vuletich
>
> https://twitter.com/JuanVuletich
>
>
> Just pushed a fix. Please review it. It is update #5346.
>
> Thanks!
>
> --
> Juan Vuletich
> www.cuis-smalltalk.org <http://www.cuis-smalltalk.org>
> https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
> https://github.com/jvuletich
> https://www.linkedin.com/in/juan-vuletich-75611b3
> https://independent.academia.edu/JuanVuletich
> https://www.researchgate.net/profile/Juan-Vuletich
> https://patents.justia.com/inventor/juan-manuel-vuletich
> https://twitter.com/JuanVuletich
>
--
Juan Vuletich
www.cuis-smalltalk.org
https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev
https://github.com/jvuletich
https://www.linkedin.com/in/juan-vuletich-75611b3
https://independent.academia.edu/JuanVuletich
https://www.researchgate.net/profile/Juan-Vuletich
https://patents.justia.com/inventor/juan-manuel-vuletich
https://twitter.com/JuanVuletich
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20220702/eef6894f/attachment.htm>
More information about the Cuis-dev
mailing list