Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

09-threads.md - add basic mutex and waiting demonstration #285

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

taikedz
Copy link

@taikedz taikedz commented Dec 12, 2024

Changes

Add a basic example extending the existing one:

  • Uses the same sleepy function
  • Adds a global integer counter
  • Adds use of a mutex example
  • Adds use of a wait group and thread pool for waiting for completions
  • Uses defer on mutex and waitgroup as good practice demonstration
  • Code is commented, minimally
  • Some description of the "why" of the various elements, without expanding on general thread-safety details; this exists in more general tutorials web-wide.

Scope

Updated the examples for 0.13.0 and 0.14.0 directly (I could not find a shared template?). Specifically did not choose to attempt to back-port.

Issues

  • uses a sleep() to avoid reaching the waitAndWork(&wg) too soon. Feels like a hack, but not sure what else to do.
    • resolved by calling wg.start() in the main thread

Tested with

  • 0.13.0
  • 0.14.0-dev.2441+3670910f2

@taikedz
Copy link
Author

taikedz commented Dec 13, 2024

Done updating and fixing typos, will refrain now from making further changes.

Thank you for Zig.guide , it's a fantastic resource 😄

@Sobeston Sobeston self-assigned this Jan 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants