IRC channel logs
2024-03-24.log
back to list of logs
<Aurora_v_kosmose>wingo: How does the interrupt unwinding work out with safety of computations now? <ArneBab>Aurora_v_kosmose: wingo is usually available during specific times, so you’ll need patience. <wingo>Aurora_v_kosmose: not sure how to answer so i will explain :) fibers can suspend at yield points. there are explicit yield points: for example waiting on a channel get. and, by default, whereever an async can run (see Asyncs in the manual; basically, function entry and loop back-edges) is potentially a yield point <wingo>asyncs only run if, well, there are asyncs to run. in the default preemptive mode, fibers sets up a SIGITIMER to run at 100 Hz or something <wingo>which will cause the OS to deliver a signal to the Guile process every 10 ms. this will schedule an async. fibers installs an async handler that yields the current thread. <wingo>er. sorry, a signal handler, not an async handler <wingo>signals get handled via an async also :P <wingo>dunno if that makes it clear <Aurora_v_kosmose>wingo: Somewhat. If an async or signal handler creates a continuation, does said continuation resume the computation that was otherwise ongoing within that thread?