Essential session storage is required to sign in. Optional analytics remain off unless you allow them.
Build a multi-threaded processor that runs many tasks concurrently using an ExecutorService (a thread pool) and Futures, with thread-safe shared state (a concurrent collection or proper synchronized/atomic access), correct executor shutdown (shutdown + awaitTermination), and timeout/cancellation handling. Prove safety: tests that exercise concurrency and would expose a race if the shared state were unguarded.
ExecutorService/thread pool + Future used correctly; clean shutdown (shutdown + awaitTermination); no leaked threads.
Shared state protected (concurrent collection, synchronized, or atomics); no data races; respects the memory model.
Per-task failures/timeouts handled without sinking the whole batch; cancellation works.
Tests exercise concurrency (multiple tasks) and assert correct aggregated results.
Use this README structure to make the work reviewable.
DevPath fetches a read-only, size-capped snapshot. Submitted code is never executed.
# A concurrent task processor with an executor ## Goal Build a multi-threaded processor that runs many tasks concurrently using an ExecutorService (a thread pool) and Futures, with thread-safe shared state (a concurrent collection or proper synchronized/atomic access), correct executor shutdown (shutdown + awaitTermination), and timeout/cancellation handling. Prove safety: tests that exercise concurrency and would expose a race if the shared state were unguarded. ## Acceptance criteria - [ ] Executor & futures: ExecutorService/thread pool + Future used correctly; clean shutdown (shutdown + awaitTermination); no leaked threads. - [ ] Thread safety: Shared state protected (concurrent collection, synchronized, or atomics); no data races; respects the memory model. - [ ] Resilience: Per-task failures/timeouts handled without sinking the whole batch; cancellation works. - [ ] Tests: Tests exercise concurrency (multiple tasks) and assert correct aggregated results. ## Verification - [ ] Document installation and run commands. - [ ] Record automated checks and their exact commands. - [ ] Add representative output, screenshots, or a short demo where useful. - [ ] Confirm failure paths and known constraints. ## Decision log ### Decision title - Context: - Choice: - Alternatives considered: - Tradeoffs: ## Evidence - Link each rubric criterion to the file, test, or artifact that demonstrates it. ## Known limitations - List what is intentionally out of scope and what should be improved next.