{"adoption": {"forks": 362, "observed_at": "2026-08-28T04:06:07.895327+00:00", "stars": 2034}, "canonical_url": "https://ross.abutalabs.com/products/ctpl", "card": {"archived": false, "artifact_type": "library", "description": "Modern and efficient C++ Thread Pool Library", "domain": ["developer-tools"], "enriched": true, "function": ["concurrency"], "health_score": 20, "homepage": null, "language": "C++", "license": "Apache-2.0", "license_family": "permissive", "maturity": "stable", "member_repos": ["vit-vit/CTPL"], "name": "vit-vit/CTPL", "platform": ["cpp", "cross-platform"], "pushed_at": "2023-01-26T06:30:38+00:00", "repo": "vit-vit/CTPL", "stars": 2034, "tags": ["thread-pool", "header-only", "parallel-execution", "futures", "algorithms"], "topics": [], "urls": [], "use_cases": ["run tasks in parallel with a fixed set of worker threads", "limit the number of concurrently executing jobs", "avoid thread creation/destruction overhead in a C++ app", "process background event handlers to keep a UI responsive", "get results or exceptions from submitted tasks via std::future", "resize the worker pool dynamically at runtime"], "what_it_is": "CTPL is a modern, efficient, header-only C++ thread pool library implementing the thread pool pattern for parallel job execution. It supports pushing any callable (lambdas, functors, functions) with variadic parameters, dynamic pool resizing, and returning results via standard C++ futures.", "when_to_avoid": ["you need advanced scheduling, priorities, or work stealing beyond a basic pool", "your project requires a more feature-rich or actively evolving concurrency framework", "you cannot use C++11 or, for the Boost variant, the Boost Lockfree dependency"], "when_to_choose": ["you need a simple, dependency-free, header-only thread pool in standard C++", "you want to push arbitrary callables with variadic arguments and futures-based results", "you need to bound parallelism and query idle threads"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ctpl", "repo": "vit-vit/CTPL", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:07.895327+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:59:25.542629+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "27c603b28ca2f92e46540c91b58bcea3d5e83be03306d668c9eddb5892e8d5b0", "fetched_at": "2026-08-28T04:06:07.895327+00:00", "kind": "readme", "missing": false, "url": "https://github.com/vit-vit/CTPL"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4385, "days_push": 1315, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}