Commit graph

312 commits

Author SHA1 Message Date
Simon Cruanes
e94c7999de
suspend: provide dummy with_suspend_handler on 4.xx 2024-02-27 21:22:48 -05:00
Simon Cruanes
ed171c1171
fix ws_pool: make sure we capture the current worker before suspend 2024-02-23 20:54:51 -05:00
Simon Cruanes
8a7cfb6fb0
feat fiber: add helpers, expose any 2024-02-21 00:53:07 -05:00
Simon Cruanes
83ae0e7a4e
do not expose ?ls for Fut.spawn 2024-02-20 13:51:41 -05:00
Simon Cruanes
8614d4be40
simplify implem for background_thread for now 2024-02-20 13:45:05 -05:00
Simon Cruanes
4bf456e1ea
feat: add Background_thread
a version of `Fifo_pool` optimized for a single thread.
2024-02-20 13:43:06 -05:00
Simon Cruanes
8bfe76b3e0
improve docs for moonpool_lwt; fix race condition 2024-02-17 12:40:36 -05:00
Simon Cruanes
0df0642dd1
lwt: add TCP client/server functions that use lwt channels 2024-02-17 12:40:36 -05:00
Simon Cruanes
b991a78f3e
lwt: trace the function that performs actions in batch 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
6bf58e3e62
perf: quicker check for [] 2024-02-17 12:40:36 -05:00
Simon Cruanes
e0f5b5bbcb
fix build 2024-02-17 12:40:36 -05:00
Simon Cruanes
6f707c869c
chore 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
Simon Cruanes
a5eef687c8
expose Tracing 2024-02-17 12:40:35 -05:00
Simon Cruanes
cf8555bcec
revert: remove name on futures and tasks
async tracing will be more robust, and is enabled by
task local storage
2024-02-17 12:40:02 -05:00
Simon Cruanes
4ab76d5084
details 2024-02-14 14:57:22 -05:00
Simon Cruanes
2a42f15e37
feat: pass task local storage in run_async
the idea is that we could use this to pass storage
around in `Fut` combinators, but I'm not sure that's actually
a good idea.
2024-02-14 14:54:18 -05:00
Simon Cruanes
e8e61f6b30
feat: improve task local storage 2024-02-12 12:04:36 -05:00
Simon Cruanes
41b73462dd
fix in task_local_storage 2024-02-12 11:33:09 -05:00
Simon Cruanes
b32bf3ea3c
fix in task local storage 2024-02-12 11:30:29 -05:00
Simon Cruanes
3c8bb7d5e8
cleanup 2024-02-11 16:40:15 -05:00
Simon Cruanes
712a030206
refactor: streamline suspend, make most of it 5.0-dependent 2024-02-11 16:40:15 -05:00
Simon Cruanes
f7449416e4
restore DLA 2024-02-11 16:40:15 -05:00
Simon Cruanes
c8e99fd7ee
cleanup 2024-02-11 16:40:15 -05:00
Simon Cruanes
e9c09406ba
feat: add structured concurrency moonpool.fib 2024-02-11 16:40:14 -05:00
Simon Cruanes
13d26783c7
fix 2024-02-11 16:40:14 -05:00
Simon Cruanes
44c155751c
fix 2024-02-11 16:40:14 -05:00
Simon Cruanes
e8cc87f1f5
fixes 2024-02-11 16:40:14 -05:00
Simon Cruanes
65fd89708e
add task_local_storage to core, modify how suspend works 2024-02-11 16:40:14 -05:00
Simon Cruanes
2f11fd75df
feat: add Exn_bt to core 2024-02-11 16:40:14 -05:00
Simon Cruanes
b8ce0c9fe3
make moonpool.forkjoin optional (only on OCaml >= 5.0) 2024-02-11 16:40:14 -05:00
Simon Cruanes
49c6cd3f53
doc 2024-02-11 16:40:14 -05:00
Simon Cruanes
e14fef2834
remove deprecated Moonpool.Pool 2024-02-11 16:39:44 -05:00
Simon Cruanes
223f22a0d9
breaking: move fork-join into sub-library moonpool.forkjoin 2024-02-11 16:39:44 -05:00
Simon Cruanes
37c42b68bc
fix 2024-02-11 16:39:44 -05:00
Simon Cruanes
b0fe279f42
more internal refactor 2024-02-11 16:39:44 -05:00
Simon Cruanes
cc8860c6e3
split into moonpool.private and moonpool; format; remove DLA 2024-02-11 16:39:43 -05:00
Simon Cruanes
381a775d28
fix some @since tags 2024-02-09 10:07:09 -05:00
Simon Cruanes
e56dbc6a09
fix build 2024-02-07 15:49:01 -05:00
Simon Cruanes
27b213e30f
tracing: add optional name for pools 2024-02-07 13:31:48 -05:00
Simon Cruanes
8d83d5b691
perf: reduce size of Fut again 2024-01-30 17:06:20 -05:00
Simon Cruanes
4abc334ab3
fix 2024-01-30 16:38:31 -05:00
Simon Cruanes
8e9564a6f7
compat 2024-01-30 16:26:29 -05:00
Simon Cruanes
ef7d370060
more tracing for Fut 2024-01-30 16:25:31 -05:00
Simon Cruanes
092ad5f2ce
feat: support for trace as a depopt
one can now give tasks an optional string "name". If `Trace`
is present (installed) and enabled, this results in
a span around the task's execution. This also plays ok
with `await` and other effect-based primitives.
2024-01-30 16:10:11 -05:00