refactor: replace mutex with channels for parallel debruijn processing

Add `rayon` and `crossbeam-channel` dependencies to support concurrent execution. Replace the synchronous, mutex-protected closure pattern with a channel-based producer-consumer approach using `std::thread::scope`. This decouples unitig iteration from processing, eliminating lock contention and `Mutex` overhead while enabling parallel workloads.
This commit is contained in:
Eric Coissac
2026-06-13 10:34:31 +02:00
parent 5f98d2ef96
commit 1f336fe496
3 changed files with 25 additions and 16 deletions
+1
View File
@@ -1486,6 +1486,7 @@ name = "obidebruinj"
version = "0.1.0"
dependencies = [
"ahash",
"crossbeam-channel",
"hashbrown 0.14.5",
"obifastwrite",
"obikseq",