{"adoption": {"forks": 1302, "observed_at": "2026-08-28T04:08:54.621759+00:00", "stars": 4587}, "canonical_url": "https://ross.abutalabs.com/products/java-concurrency", "card": {"archived": false, "artifact_type": "learning-resource", "description": "concurrency", "domain": ["tutorials", "education"], "enriched": true, "function": ["concurrency", "developer-tools"], "health_score": 20, "homepage": null, "language": null, "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["CL0610/Java-concurrency"], "name": "CL0610/Java-concurrency", "platform": ["jvm"], "pushed_at": "2023-05-07T15:03:53+00:00", "repo": "CL0610/Java-concurrency", "stars": 4587, "tags": ["java-concurrency", "interview-preparation", "jmm", "aqs", "thread-safety", "chinese-language", "java", "programming"], "topics": ["java", "concurrency", "concurrent-programming", "interview", "interview-questions"], "urls": [], "use_cases": ["learn Java concurrency from basics to advanced topics", "prepare for backend engineer interviews on threading questions", "understand the Java Memory Model and happens-before rules", "study how synchronized, volatile, and AQS work internally", "review concurrent collections like ConcurrentHashMap and CopyOnWriteArrayList"], "what_it_is": "A curated collection of Chinese-language articles covering Java concurrency fundamentals, from thread basics and the Java Memory Model to locks, AQS, and concurrent containers. It doubles as an interview preparation guide with common concurrency interview questions.", "when_to_avoid": ["you need runnable code libraries or production concurrency utilities", "you cannot read Chinese-language documentation", "you need up-to-date coverage of the latest JDK concurrency features"], "when_to_choose": ["you are a Java developer studying concurrency or preparing for job interviews", "you want structured, article-style explanations with links to in-depth posts"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/java-concurrency", "repo": "CL0610/Java-concurrency", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "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:08:54.621759+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:54.621759+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:19:51.748460+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "bebfa4b66b793d774c5b931d1c452acedfbfa6fc6d0b0af1ec050641aef7c019", "fetched_at": "2026-08-28T04:08:54.621759+00:00", "kind": "readme", "missing": false, "url": "https://github.com/CL0610/Java-concurrency"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3047, "days_push": 1214, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}