<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#ffffff" text="#000000">
    On 7/19/2023 6:26 PM, rabbit via Cuis-dev wrote:
    <blockquote
cite="mid:kNQt_ghSS8ueHfn5hzD1JDxRU2H5m9oaTYwV5-G37VA4ziKJQ4uBqo6azmKx9HL4Tp58KUQUjo_PSpD9HfuBbyI0A4tN85Y5iybzN9KUVgY=@callistohouse.org"
      type="cite">
      <div dir="auto">Hi, as I’ve built an EventualTimer, using a Delay,
        would you consider a Delay class>>#startUp: resume. On
        resume, grab the image saved time and diff with each Delays’
        expireTime, or whatever, and reschedule the diff. Automatic it’s
        not a problem. We can think about other stuff.</div>
      <div dir="auto"><br>
      </div>
      <div dir="auto">Liscio come<caret></caret> l’olio,</div>
      <div class="protonmail_signature_block"
        id="protonmail_signature_block">
        <div>••• rabbit ❤️‍🔥🐰</div>
      </div>
      <div class="signature_br" contenteditable="false"><br>
      </div>
      <div class="signature_br" contenteditable="false"><br>
      </div>
    </blockquote>
    <br>
    Is that what Squeak is doing? Isn't that what Cuis is doing?<br>
    <br>
    Thanks,<br>
    <br>
    <blockquote
cite="mid:kNQt_ghSS8ueHfn5hzD1JDxRU2H5m9oaTYwV5-G37VA4ziKJQ4uBqo6azmKx9HL4Tp58KUQUjo_PSpD9HfuBbyI0A4tN85Y5iybzN9KUVgY=@callistohouse.org"
      type="cite">
      <div><br>
      </div>
      <div><br>
      </div>
      On Wed, Jul 19, 2023 at 16:06, Gerald Klix via Cuis-dev <<a
        moz-do-not-send="true" class=""
href="mailto:On%20Wed,%20Jul%2019,%202023%20at%2016:06,%20Gerald%20Klix%20via%20Cuis-dev%20%3C%3Ca%20href=">cuis-dev@lists.cuis.st</a>>
      wrote:
      <blockquote type="cite" class="protonmail_quote"> Hi Juan,<br>
        <br>
        thanks for your answer and apologies for my late reply;<br>
        I was on the road again.<br>
        <br>
        Please see below.<br>
        <br>
        On 7/17/23 4:27 PM, Juan Vuletich wrote:<br>
        > On 7/10/2023 7:13 AM, Gerald Klix via Cuis-dev wrote:<br>
        >> Hi all,<br>
        >><br>
        >> I am a bit hesitant to report this as a defect.<br>
        >><br>
        >> It looks like that the resumption of<br>
        >> processes stopped by instances of Delay<br>
        >> does not always work after image startup.<br>
        >><br>
        >> At least for delays that expire during the time<br>
        >> the image was down, if the clock wraps around<br>
        >> midnight. Actually these processes seem to be woken<br>
        >> up at the same time of day, but one day later.<br>
        >><br>
        >> Is this the expected behavior?<br>
        >><br>
        >><br>
        >> Best Regards,<br>
        >><br>
        >> Gerald<br>
        ><br>
        > I think that all Delays that expired when the image was not
        running<br>
        > should simply be discarded at startup. Otherwise there is a
        real risk<br>
        > of the image not starting again, or getting stuck.<br>
        ><br>
        To me this makes sense. Additionally we could get rid of the<br>
        complicated logic in the category snapshotting of class Delay.<br>
        Do you want to terminated the associated processes, too?<br>
        <br>
        > I also think that saving an image with suspended Delays is
        not a good<br>
        > idea...<br>
        ><br>
        In that case, we can get rid of the delays when saving the
        image.<br>
        Again the question about the associated processes arises.<br>
        <br>
        The current semantics of delays in saved images is surprising<br>
        and probably unintentional; at least it needs some words<br>
        of explanations in Delay's class comment.<br>
        <br>
        <br>
        Any how, I implemented Alarms for items in a todo-list with
        delays.<br>
        The solution for the aforementioned problem is to "reschedule"<br>
        all the alarms when starting the image. "Reschedule" means<br>
        terminated the old process waiting on the delay and create<br>
        a new one, if the alarm still lies in the future.<br>
        Otherwise change the alarm's due time to 5 seconds<br>
        in the future, to alert the user shortly after image startup.<br>
        <br>
        I implemented this behavior using initClassCachedState.<br>
        This way the alarms are rescheduled even when<br>
        I just save the image.<br>
        <br>
        <br>
        Best Regards,<br>
        <br>
        Gerald<br>
        <br>
        <br>
        <br>
        --<br>
        Cuis-dev mailing list<br>
        <a class="moz-txt-link-abbreviated" href="mailto:Cuis-dev@lists.cuis.st">Cuis-dev@lists.cuis.st</a><br>
        <a class="moz-txt-link-freetext" href="https://lists.cuis.st/mailman/listinfo/cuis-dev">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
      </blockquote>
    </blockquote>
    <br>
    <br>
    <pre class="moz-signature" cols="72">-- 
Juan Vuletich
cuis.st
github.com/jvuletich
researchgate.net/profile/Juan-Vuletich
independent.academia.edu/JuanVuletich
patents.justia.com/inventor/juan-manuel-vuletich
linkedin.com/in/juan-vuletich-75611b3
twitter.com/JuanVuletich</pre>
  </body>
</html>