Kevin Ring
c2aa1885cd
Add `Future::isReady`.
2021-08-23 19:44:36 +10:00
Kevin Ring
b64e7dc0d3
Revert "Add Future::isReady."
...
This reverts commit 168f2c21aa .
2021-08-23 19:43:43 +10:00
Kevin Ring
168f2c21aa
Add Future::isReady.
2021-08-23 19:40:23 +10:00
Kevin Ring
84d9d94725
Formatting.
2021-08-04 14:32:09 +10:00
Kevin Ring
5fa7f7237b
Fix compile errors when tracing is enabled.
2021-08-04 14:20:38 +10:00
Kevin Ring
883c40f4aa
Enabling chaining to another Future in a catch.
2021-07-23 15:43:51 +10:00
Kevin Ring
b7df34b49c
Allow catching a shared future.
2021-07-23 13:41:35 +10:00
Kevin Ring
f1ea6bd4ea
Allow use of `all` with SharedFutures.
2021-07-16 15:27:58 +10:00
Kevin Ring
76b8e283a7
Fix clang error.
2021-07-16 12:46:59 +10:00
Kevin Ring
d755d1c7e5
Add doc for share method.
2021-07-16 12:41:59 +10:00
Kevin Ring
3f45992843
More tests for SharedFuture
2021-07-16 12:36:54 +10:00
Kevin Ring
ae04eb1f8c
Fix build.
2021-07-16 12:28:53 +10:00
Kevin Ring
7d5823478f
Merge remote-tracking branch 'origin/future-all' into shared-future
2021-07-16 12:16:40 +10:00
Kevin Ring
3bd41c440f
Merge remote-tracking branch 'origin/async-system-tests' into future-all
2021-07-16 12:16:19 +10:00
Kevin Ring
f86ab223b7
Fix race condition in tests.
2021-07-16 11:09:17 +10:00
Kevin Ring
858f7ef5eb
WIP SharedFuture
2021-07-15 23:37:55 +10:00
Kevin Ring
e89b5f01f6
Formatting.
2021-07-15 18:03:13 +10:00
Kevin Ring
2079b56624
Add catchImmediately, more tests.
2021-07-15 18:02:00 +10:00
Kevin Ring
7dff5a9fc9
Formatting.
2021-07-15 14:06:58 +10:00
Kevin Ring
7f6f1e3687
Add `all` method to AsyncSystem.
2021-07-15 14:06:29 +10:00
Kevin Ring
99fe6a35ac
Formatting.
2021-07-14 21:32:24 +10:00
Kevin Ring
e6e0561641
Move Promise to a separate file.
2021-07-14 21:31:52 +10:00
Kevin Ring
4c541cda73
Fix forwarding for WithTracing and unwrapFuture.
2021-07-14 21:25:16 +10:00
Kevin Ring
d836b63b51
Rename dispatchZeroOrOneMainThreadTask to dispatchOneMainThreadTask.
...
And also improve its doc.
2021-07-14 17:01:51 +10:00
Kevin Ring
f6f7ba4450
Merge remote-tracking branch 'origin/main' into async-system-tests
2021-07-14 16:56:54 +10:00
baothientran
050ef4019c
Merge pull request #275 from CesiumGS/catch2-with-angle
...
Use angle brackets to #include catch2.
2021-07-08 23:00:31 -04:00
Kevin Ring
ae8977e70f
Fix a mysterious thread_local related segfault.
2021-07-08 22:13:12 +10:00
Kevin Ring
ad11fffb42
Add specialization for Promise<void>.
2021-07-07 14:40:10 +10:00
Kevin Ring
a1ebce1dcd
Allow direct creation of a Promise.
...
Rather than the JavaScript-like create a future by providing a callback
that is given a promise. This can be less exception safe (allow
exceptions to escape from a Future-returning method instead of being
turned into Promise rejection) but also tends to be much easier to work
with.
2021-07-07 14:12:15 +10:00
Kevin Ring
b2ac5a70f6
Fix a race condition in a test.
2021-07-07 00:53:54 +10:00
Kevin Ring
8f7570ccdd
Avoid slicing exception objects.
2021-07-07 00:32:46 +10:00
Kevin Ring
355c486683
Make Future::wait return T and throw on reject.
2021-07-06 23:29:59 +10:00
Kevin Ring
17a16a4dc7
AsyncSystem test improvements.
2021-07-06 22:12:42 +10:00
Kevin Ring
2c88c6c282
Formatting.
2021-07-06 19:02:18 +10:00
Kevin Ring
490114c648
Add some tests for AsyncSystem.
2021-07-06 19:01:46 +10:00
Kevin Ring
4e45bab460
Use angle brackets to #include catch2.
2021-07-04 22:57:11 +10:00
Kevin Ring
bf25e2b925
Changes from review.
2021-06-30 09:53:24 +10:00
Kevin Ring
a74941bf53
Refactor schedulers.
2021-06-27 22:37:32 +10:00
Kevin Ring
287bde9573
typedef -> using
2021-06-26 23:25:08 +10:00
Kevin Ring
f0ee99a714
Actually track the thread pool threads.
2021-06-26 23:14:12 +10:00
Kevin Ring
38a1faea12
Better names for tracing macros.
2021-06-26 00:11:52 +10:00
Kevin Ring
8b7832ba83
WIP overhaul of macros for tracing across threads.
2021-06-25 21:11:40 +10:00
Kevin Ring
a711e01f24
Add doc about AsyncSystem lifetime woes.
2021-06-24 17:06:34 +10:00
Kevin Ring
669bdefeec
Fix clang warnings.
2021-06-22 21:00:28 +10:00
Kevin Ring
e0865d075a
Formatting.
2021-06-22 20:44:54 +10:00
Kevin Ring
43c5b3d474
Fix test failures.
2021-06-22 18:17:32 +10:00
Kevin Ring
628b11325d
Formatting.
2021-06-22 17:35:53 +10:00
Kevin Ring
6ece726757
Fix problems when tracing is disabled.
2021-06-22 17:19:33 +10:00
Kevin Ring
0fa144f516
Make "immediately" the default for continuations.
2021-06-22 15:31:30 +10:00
Kevin Ring
f7e4bb9d66
Allow trace begin/end to be outside async process.
2021-06-22 14:06:50 +10:00