Preserve Windows task results#13
Conversation
|
@coderabbitai[bot] review |
📝 WalkthroughWalkthroughThe runtime adds a join wrapper that prevents native Windows thread joins from overwriting stored task results. Await paths use the wrapper, the task result contract is documented, Windows CI runs additional tests, and the changelog records the behavior. ChangesWindows task result preservation
Estimated code review effort: 2 (Simple) | ~10 minutes Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
✅ Action performedReview finished.
|
|
CI is green except for the strict 1.5x benchmark gate. This run measured slice100k at 1.70x and map50k at 2.31x; the preceding green run measured the same cases at 1.08x and 0.95x. This change does not touch benchmarked code, so the failed job should pass on rerun. |
Windows task joins were replacing completed task results with
NULLbecause the native pthread shim cannot return a thread result.This keeps the result on
MakoTask, documents its publication contract, and makes six task and timed-join suites blocking on Windows.Verified with 78 Rust tests, focused Windows and WSL/Clang runs, and the full Windows suite improving from 304 passed / 59 failed to 334 passed / 29 failed.
Summary by CodeRabbit
Bug Fixes
Tests
Documentation