<body><div id="__MailbirdStyleContent" style="font-size: 10pt;font-family: Arial;color: #000000;text-align: left" dir="ltr">
                                        Hi Jaromir --<div><br></div><div>Thanks! :-) This is a great improvement over 5.3.</div><div><br></div><div>Best,</div><div>Marcel</div><div class="mb_sig"></div><blockquote class='history_container' type='cite' style='border-left-style:solid;border-width:1px; margin-top:20px; margin-left:0px;padding-left:10px;'>
                        <p style='color: #AAAAAA; margin-top: 10px;'>Am 07.06.2022 17:38:35 schrieb Jaromir Matas <mail@jaromir.net>:</p><div style='font-family:Arial,Helvetica,sans-serif'>
<div class="WordSection1">
<p class="MsoNormal">Hi Marcel, all</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I’ve sent an updated #terminate Kernel-jar.1476: </p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">- fixed the synchronization between the terminating process and the process that invoked the termination.</p>
<p class="MsoNormal">- added further protection against multiple termination (it makes the code uglier but I can't help it)</p>
<p class="MsoNormal">- improved the comment (it's still too long and insufficient though ;) )</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Warning: When terminating a process from the UI (Workspace) one must take into account that an error during the unwind will freeze the UI (because the UI waits for the completion of the termination) - this is expected but scary :)</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If you run this in the Workspace:</p>
<p class="MsoNormal">                p := [ [Semaphore new wait] ensure: [1/0] ] fork.</p>
<p class="MsoNormal">And then terminate by hand in the Workspace:</p>
<p class="MsoNormal">                p terminate</p>
<p class="MsoNormal">the UI freezes; after Cmd + . recovery the ZeroDivide pops up as expected.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Better way to terminate p in the Workspace is indeed: </p>
<p class="MsoNormal">                [p terminate] fork</p>
<p class="MsoNormal">The ZeroDivide pops up right away ad both processes terminate after you dismiss the popup window.</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">(To close the debugger window use Proceed or 'terminate ' from the window menu; Abandon doesn’t work for some reason unrelated to #terminate)</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">For comparison: in 5.3 the above example ended up as an "Unwind error".</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Best,</p>
<p class="MsoNormal">Jaromir</p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNoSpacing"><span lang="CS">--</span></p>
<p class="MsoNoSpacing"><strong><span style="font-family:"Calibri Light",sans-serif;color:#333333;font-weight:normal">Jaromír Matas</span></strong><span style="font-family:"Calibri Light",sans-serif;color:#555555"><o:p></o:p></span></p>
<p class="MsoNoSpacing"><span style="font-family:"Calibri Light",sans-serif;color:#2E75B6">mail@jaromir.net</span></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
</div></blockquote>
                                        </div></body>