Simon Cruanes
f9ab951c36
remove moonpool.fib
...
it's complicated and hard to use in practice, because it's not obvious
if a piece of code is running under another fiber or not, so
`Fiber.spawn` might fail because it has no parent.
So in practice we've been using `Fiber.spawn_top`… which has no
interest over just using `Fut.spawn`.
2025-10-25 21:50:46 -04:00
Simon Cruanes
92300ad698
fix: make Moonpool_lwt.fut_of_lwt idempotent
...
github pages / Deploy doc (push) Has been cancelled
Build and Test / build (push) Has been cancelled
Build and Test / build-compat (push) Has been cancelled
Build and Test / format (push) Has been cancelled
this way the resulting future can be cancelled/fulfilled from
the outside without crashing Lwt
2025-10-07 13:53:54 -04:00
Simon Cruanes
2dbbad4ef2
refactor moonpool_lwt
2025-09-26 14:55:26 -04:00
Simon Cruanes
677ae5c36a
perf: fast path for Moonpool_lwt.run_in_lwt_and_await
2025-09-26 14:55:26 -04:00
Simon Cruanes
4e19719c4f
modify signature for Moonpool_lwt.run_in_lwt_and_await
2025-09-26 14:55:26 -04:00
Simon Cruanes
8bd79c70b5
add Moonpool_lwt.on_lwt_thread
2025-09-26 14:55:26 -04:00
Simon Cruanes
f245f4913c
add Moonpool_lwt.spawn_lwt_ignore
2025-09-26 14:55:26 -04:00
Simon Cruanes
86b64ae3d4
fix lwt: make sure to wakeup loop in main
...
there's a race condition where, by the time we schedule the
main fiber in `lwt_main`, the event loop is already asleep (maybe
from a previous run). We make sure to wake the loop up.
2025-09-26 14:55:25 -04:00
Simon Cruanes
9e814ecb48
lwt: handle fibers in moonpool_lwt
2025-09-26 14:55:25 -04:00
Simon Cruanes
e3be2aceaa
feat lwt: make sure we can setup/cleanup multiple times
2025-09-26 14:55:25 -04:00
Simon Cruanes
1eef212a3e
more sanity checks
2025-09-26 14:55:25 -04:00
Simon Cruanes
122b3a6b06
feat lwt: make most functions work on any thread, not just the main
2025-09-26 14:55:25 -04:00
Simon Cruanes
6ae82f130a
feat lwt: proper wakeup; add lwt_main_runner
2025-09-26 14:55:25 -04:00
Simon Cruanes
796c4f6f31
feat lwt: improvements
2025-09-26 14:55:25 -04:00
Simon Cruanes
6c4fb69d23
wip: lwt
2025-09-26 14:55:24 -04:00
Simon Cruanes
295f22e770
wip: lwt
2025-09-26 14:55:24 -04:00
Simon Cruanes
bf90c32c86
wip lwt: event loop for moonpool directly inside lwt
2025-09-26 14:55:24 -04:00
Simon Cruanes
0df0642dd1
lwt: add TCP client/server functions that use lwt channels
2024-02-17 12:40:36 -05:00
Simon Cruanes
36c6e8e900
fix build, remove some debug
2024-02-17 12:40:36 -05:00
Simon Cruanes
e0f5b5bbcb
fix build
2024-02-17 12:40:36 -05:00
Simon Cruanes
f6d67028cf
feat lwt: non-blocking TCP_client.with_connect
2024-02-17 12:40:35 -05:00
Simon Cruanes
930e09e5b3
lwt: basic IO wrappers, simple TCP server wrapper
2024-02-17 12:40:35 -05:00
Simon Cruanes
d248a569f6
feat: progress on moonpool-lwt
2024-02-17 12:40:35 -05:00
Simon Cruanes
90850ae38c
wip: moonpool lwt
2024-02-17 12:40:35 -05:00
Simon Cruanes
fbc7679d05
wip: add moonpool-lwt
2024-02-17 12:40:35 -05:00