Skip to content

dennissivia/concurrency-playground

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

concurrency-playground

Implement concurrency primitives from scratch

Simple threads

Thread pools

Thread pool

TODO list

Some more things I want to implement

  • Basic threaded networking server
    • Ensure a fixed max number of threads
  • Thread pools
    • Implement basic thread pool
    • Detect dead worker
  • Check if underlaying datastructures are thread-safe
  • Make tasks cancellable to handle slow clients
  • Implement back pressure / throttling
  • Work different promitives
    • Locks
    • Semaphores
    • Barriers
    • Cyclic Barriers
    • Condition objects
    • IVar / Future
    • MVar
    • TVar (STM)
    • Cancellation
  • Implement different schedulers
    • FIFO
    • (Job) priority scheduling
    • (shortest) remaining time first
  • High level abstractions
    • Promise
  • Actors
  • Actor Pool
  • Channel

About

Implement concurrency primitives from scratch

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published