{"id":21850683,"url":"https://github.com/stephenmp/parallel-p2","last_synced_at":"2025-09-06T00:47:36.309Z","repository":{"id":96448446,"uuid":"553958654","full_name":"StephenMP/Parallel-p2","owner":"StephenMP","description":null,"archived":false,"fork":false,"pushed_at":"2022-10-19T03:05:24.000Z","size":13,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-08-12T06:40:50.523Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C","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/StephenMP.png","metadata":{"files":{"readme":"README.txt","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":"2022-10-19T03:03:22.000Z","updated_at":"2022-10-19T03:05:29.000Z","dependencies_parsed_at":"2023-12-23T19:45:24.855Z","dependency_job_id":null,"html_url":"https://github.com/StephenMP/Parallel-p2","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/StephenMP/Parallel-p2","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StephenMP%2FParallel-p2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StephenMP%2FParallel-p2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StephenMP%2FParallel-p2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StephenMP%2FParallel-p2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/StephenMP","download_url":"https://codeload.github.com/StephenMP/Parallel-p2/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StephenMP%2FParallel-p2/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273842869,"owners_count":25177921,"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-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","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":[],"created_at":"2024-11-28T00:18:50.559Z","updated_at":"2025-09-06T00:47:36.287Z","avatar_url":"https://github.com/StephenMP.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Name: Stephen Porter\r\nClss: CS 453\r\nAssn: p3\r\nUpdt: 10/30/2014\r\n\r\n============\r\nBuild / Run\r\n============\r\nTo Build:\r\n\tmake\r\n\t\r\nTo Run:\r\n\t./pc \u003cpoolsize\u003e \u003c#items/producer\u003e \u003c#producers\u003e \u003c#consumers\u003e \u003csleep interval(microsecs)\u003e\r\n\r\nTo Clean:\r\n\tmake clean\r\n\t\r\n======\r\nFiles\r\n======\r\ninclude\r\n\t|_\r\n\t  contains all header files after make\r\nlib\r\n\t|_\r\n\t  contains all library files after make\r\nlibsrc\r\n\t|_\r\n\t  common.h\r\n\t  List.c\r\n\t  List.h\r\n\t  Makefile\r\n\t  Node.c\r\n\t  Node.h\r\nItem.c\r\nItem.h\r\nMakefile\r\npc.c\r\nREADME.txt\r\ntest.sh\r\n\r\n\r\n===========\r\nDiscussion\r\n===========\r\nThis project was pretty easy. The only issue I ran into was with the conditions. I was using a single condition for both producers and consumers, which lead the broadcast in the finishUp() method to hang. I fixed that by creating a separate conditional for producers and consumers.\r\n\r\nI also took out unnecessary code in my list. I know that in general I wouldn't do that, I just did it because it wasn't necessary for this project (e.g. printList or getSize). It just made the code look cleaner and we only see the important stuff for this project.\r\n\r\nAlso, thanks Amit for the extra day in light of Halloween. It was nice to not have to worry about this until I had a day with nothing going on rather than trying t do it throughout the week when my schedule is jam packed full of stuff to do.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephenmp%2Fparallel-p2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstephenmp%2Fparallel-p2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstephenmp%2Fparallel-p2/lists"}