[Cuis-dev] FW: FW: Freezing UI - can't interrupt via Alt+.

Jaromir Matas mail at jaromir.net
Sun Jul 10 11:31:47 PDT 2022


Hi Juan, all

just a quick one:

I'm puzzled by this example:

[1/0] fork.
5 seconds asDelay wait.
self error: 'error'

I'd expect the ZeroDivide notifier pop up immediately because the #wait should allow the forked process run and request the notifier window - and thanks to the lastest updates a new UI should get spawned while the old one is being blocked... but it's not happening and I can't figure out why :) Maybe you'll see it right away; maybe I’m just missing something obvious; otherwise I'll keep digging - many thanks!

best,
Jaromir


From: Jaromir Matas via Cuis-dev<mailto:cuis-dev at lists.cuis.st>
Sent: Saturday, July 9, 2022 22:59
To: Juan Vuletich<mailto:JuanVuletich at zoho.com>; Discussion of Cuis Smalltalk<mailto:cuis-dev at lists.cuis.st>
Cc: Jaromir Matas<mailto:mail at jaromir.net>
Subject: Re: [Cuis-dev] FW: FW: Freezing UI - can't interrupt via Alt+.

Hi Juan,

> But I don't think this problem grants adding a class variable to SystemDictionary. I just pushed an update that calls #valueUnpreemptively instead.

Fair point about the class variable; I felt the same but wanted to demonstrate some solution; unfortunately #valueUnpreemptively didn’t occur to me, thanks! It works fine indeed.

I can see you solved the highestPriority + 1 issue in #priority: … nice :) So no need to fix #terminate now, thanks.

I’m working on an updated version of #terminate with a few improvements; one of them is the ‘active+1’ priority is replaced with a semaphore to achieve full synchronization between the process invoking the termination and the process being terminated. I’ll send the final version after testing it properly; fixing this LowSpaceWatcher issue was one of the prerequisites; many thanks for your quick response!

Best,
Jaromir

--

Jaromír Matas

mail at jaromir.net

From: Juan Vuletich<mailto:JuanVuletich at zoho.com>
Sent: Saturday, July 9, 2022 21:57
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] FW: FW: Freezing UI - can't interrupt via Alt+.

Hi Jaromir,

You are right, and your code is safer.

But I don't think this problem grants adding a class variable to SystemDictionary. I just pushed an update that calls #valueUnpreemptively instead.

Thanks,

On 7/9/2022 8:17 AM, Jaromir Matas via Cuis-dev wrote:
Hi Juan,

I’ve stumbled upon this irregularity:

If you run this in the Workspace…

[Smalltalk installLowSpaceWatcher] fork.
[Smalltalk installLowSpaceWatcher] fork

… the system ends up with two processes running the #lowSpaceWatcher method; the root cause is #installLowSpaceWatcher runs unprotected against multiple concurrent invocations.

I’d suggest running the # installLowSpaceWatcher’s code as the Semaphore >> #critical section: see attached changeset with a more detailed description in the method comment. Please feel free to modify in any way :)

Thanks for your opinion,
Jaromir


--

Jaromír Matas

mail at jaromir.net<mailto:mail at jaromir.net>



--

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


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20220710/526f60f9/attachment-0001.htm>


More information about the Cuis-dev mailing list