{"id":21581540,"url":"https://github.com/thoughtscript/python_processing_2024","last_synced_at":"2025-07-22T20:03:58.187Z","repository":{"id":245198983,"uuid":"817476531","full_name":"Thoughtscript/python_processing_2024","owner":"Thoughtscript","description":"Review of Python Concurrency and Threading","archived":false,"fork":false,"pushed_at":"2024-12-29T23:21:36.000Z","size":7,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-18T08:14:31.921Z","etag":null,"topics":["concurrency","python3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Thoughtscript.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-19T19:48:41.000Z","updated_at":"2024-12-29T23:21:40.000Z","dependencies_parsed_at":"2024-08-10T05:25:22.074Z","dependency_job_id":"b5ab81f6-c622-4fbb-99b6-fd6312e589cd","html_url":"https://github.com/Thoughtscript/python_processing_2024","commit_stats":null,"previous_names":["thoughtscript/python_processing_2024"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Thoughtscript/python_processing_2024","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Thoughtscript%2Fpython_processing_2024","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Thoughtscript%2Fpython_processing_2024/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Thoughtscript%2Fpython_processing_2024/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Thoughtscript%2Fpython_processing_2024/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Thoughtscript","download_url":"https://codeload.github.com/Thoughtscript/python_processing_2024/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Thoughtscript%2Fpython_processing_2024/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":266563915,"owners_count":23948689,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-07-22T02:00:09.085Z","response_time":66,"last_error":null,"robots_txt_status":null,"robots_txt_updated_at":null,"robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["concurrency","python3"],"created_at":"2024-11-24T14:12:51.926Z","updated_at":"2025-07-22T20:03:58.135Z","avatar_url":"https://github.com/Thoughtscript.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# python_processing_2024\n\n[![](https://img.shields.io/badge/Python-3.12.3-yellow.svg)](https://www.python.org/downloads/) [![](https://img.shields.io/badge/Docker-blue.svg)](https://www.docker.com/) \n\nQuick and brief review of some important Python Concurrency, Fork, and Threading concepts.\n\n## Use\n\n```bash\ndocker-compose up\n\n# If using Docker Compose Engine V2:\ndocker compose up\n```\n\n\u003e The container will exit after it's done running.\n\n```bash\npython-1  | I'm in BASH fork: BBBB\npython-1  | BBBB.p_one.t_one thread local data: -783\npython-1  | ================= BEGIN bashfork: BBBB pid: p_one tid: t_one example() =================\npython-1  | 0 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 1 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 2 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 3 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 4 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 5 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 6 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 7 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | 8 in bashfork: BBBB pid: p_one tid: t_one\npython-1  | ================= END bashfork: BBBB pid: p_one tid: t_one example() =================\npython-1  | BBBB.p_one.t_two thread local data: -730\npython-1  | ================= BEGIN bashfork: BBBB pid: p_one tid: t_two example() =================\npython-1  | 0 in bashfork: BBBB pid: p_one tid: t_two\npython-1  | 1 in bashfork: BBBB pid: p_one tid: t_two\npython-1  | ================= END bashfork: BBBB pid: p_one tid: t_two example() =================\npython-1  | I'm in BASH fork: AAAA\npython-1  | BBBB.p_two.t_one thread local data: -127\npython-1  | ================= BEGIN bashfork: BBBB pid: p_two tid: t_one example() =================\npython-1  | 0 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 1 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 2 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 3 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 4 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 5 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | 6 in bashfork: BBBB pid: p_two tid: t_one\npython-1  | ================= END bashfork: BBBB pid: p_two tid: t_one example() =================\npython-1  | BBBB.p_two.t_two thread local data: -250\npython-1  | ================= BEGIN bashfork: BBBB pid: p_two tid: t_two example() =================\npython-1  | 0 in bashfork: BBBB pid: p_two tid: t_two\npython-1  | 1 in bashfork: BBBB pid: p_two tid: t_two\npython-1  | 2 in bashfork: BBBB pid: p_two tid: t_two\npython-1  | 3 in bashfork: BBBB pid: p_two tid: t_two\npython-1  | ================= END bashfork: BBBB pid: p_two tid: t_two example() =================\npython-1  | AAAA.p_one.t_one thread local data: -102\npython-1  | ================= BEGIN bashfork: AAAA pid: p_one tid: t_one example() =================\npython-1  | 0 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | 1 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | 2 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | 3 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | 4 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | 5 in bashfork: AAAA pid: p_one tid: t_one\npython-1  | ================= END bashfork: AAAA pid: p_one tid: t_one example() =================\npython-1  | AAAA.p_one.t_two thread local data: -954\npython-1  | ================= BEGIN bashfork: AAAA pid: p_one tid: t_two example() =================\npython-1  | 0 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 1 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 2 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 3 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 4 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 5 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 6 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 7 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 8 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | 9 in bashfork: AAAA pid: p_one tid: t_two\npython-1  | ================= END bashfork: AAAA pid: p_one tid: t_two example() =================\npython-1  | AAAA.p_two.t_one thread local data: -539\npython-1  | ================= BEGIN bashfork: AAAA pid: p_two tid: t_one example() =================\npython-1  | 0 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 1 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 2 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 3 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 4 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 5 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 6 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | 7 in bashfork: AAAA pid: p_two tid: t_one\npython-1  | ================= END bashfork: AAAA pid: p_two tid: t_one example() =================\npython-1  | AAAA.p_two.t_two thread local data: -164\npython-1  | ================= BEGIN bashfork: AAAA pid: p_two tid: t_two example() =================\npython-1  | 0 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 1 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 2 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 3 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 4 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 5 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | 6 in bashfork: AAAA pid: p_two tid: t_two\npython-1  | ================= END bashfork: AAAA pid: p_two tid: t_two example() =================\npython-1  | ================= BEGIN multiprocessing.Pool example() =================\npython-1  | 0\npython-1  | 1\npython-1  | 2\npython-1  | 3\npython-1  | 4\npython-1  | 5\npython-1  | 6\npython-1  | 7\npython-1  | 8\npython-1  | 9\npython-1  | ================= END multiprocessing.Pool example() =================\npython-1  | ================= BEGIN multiprocessing.Pool example() =================\npython-1  | 0\npython-1  | 1\npython-1  | 2\npython-1  | 3\npython-1  | 4\npython-1  | 5\npython-1  | 6\npython-1  | 7\npython-1  | 8\npython-1  | 9\npython-1  | 10\npython-1  | 11\npython-1  | 12\npython-1  | 13\npython-1  | 14\npython-1  | 15\npython-1  | 16\npython-1  | 17\npython-1  | 18\npython-1  | 19\npython-1  | ================= END multiprocessing.Pool example() =================\npython-1  | ================= BEGIN multiprocessing.Pool example() =================\npython-1  | 0\npython-1  | 1\npython-1  | 2\npython-1  | 3\npython-1  | 4\npython-1  | 5\npython-1  | 6\npython-1  | 7\npython-1  | 8\npython-1  | 9\npython-1  | 10\npython-1  | 11\npython-1  | 12\npython-1  | 13\npython-1  | 14\npython-1  | 15\npython-1  | 16\npython-1  | 17\npython-1  | 18\npython-1  | 19\npython-1  | 20\npython-1  | 21\npython-1  | 22\npython-1  | 23\npython-1  | 24\npython-1  | 25\npython-1  | 26\npython-1  | 27\npython-1  | 28\npython-1  | 29\npython-1  | ================= END multiprocessing.Pool example() =================\npython-1  | ================= BEGIN multiprocessing.Pool example() =================\npython-1  | 0\npython-1  | 1\npython-1  | 2\npython-1  | 3\npython-1  | 4\npython-1  | 5\npython-1  | 6\npython-1  | 7\npython-1  | 8\npython-1  | 9\npython-1  | ================= END multiprocessing.Pool example() =================\npython-1  | ================= BEGIN multiprocessing.Pool example() =================\npython-1  | 0\npython-1  | 1\npython-1  | 2\npython-1  | 3\npython-1  | 4\npython-1  | 5\npython-1  | 6\npython-1  | 7\npython-1  | 8\npython-1  | 9\npython-1  | 10\npython-1  | 11\npython-1  | 12\npython-1  | 13\npython-1  | 14\npython-1  | 15\npython-1  | 16\npython-1  | 17\npython-1  | 18\npython-1  | 19\npython-1  | 20\npython-1  | 21\npython-1  | 22\npython-1  | 23\npython-1  | 24\npython-1  | ================= END multiprocessing.Pool example() =================\npython-1  | async_call_back!\npython-1  | async_call_back!\npython-1 exited with code 0\n```\n\n## Resources and Links\n\n1. https://docs.python.org/3/library/multiprocessing.html\n2. https://docs.python.org/3/library/threading.html\n3. https://docs.python.org/3/library/argparse.html\n4. https://www.geeksforgeeks.org/with-statement-in-python/\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoughtscript%2Fpython_processing_2024","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthoughtscript%2Fpython_processing_2024","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthoughtscript%2Fpython_processing_2024/lists"}