Study Notes
  • Introduction
  • Architecture & System Design
    • Messaging Systems
    • RPC Frameworks
    • Scalable Web Application Architecture
    • Parallel vs Concurrent
    • Concurrency
    • Load Balancing - Nginx
    • REST API
    • WebSockets
    • Streaming
    • Serialization
  • Programming Language
    • JavaScript & Node.js
      • Node.js Promises
      • Node.js Async Flow Control
      • Node.js Profiling
    • Java
    • Erlang
    • Python
    • Golang
      • Go Runtime Scheduler
  • Software Engineering
    • Design Patterns
    • Unit Testing
    • Legacy Code
    • Agile & Scrum
  • Database
    • NoSQL
    • SQL
  • DevOps & Tools
    • Version Control - Git
    • Shell - zsh, bash
    • Docker
    • Linux Package Management - YUM
    • Linux Command Line Tools
  • Security
    • OWASP Security
  • AI, ML, DL, CV, NLP
    • Deep Learning
Powered by GitBook
On this page
  • Problems
  • Dining philosophers problem

Was this helpful?

  1. Architecture & System Design

Concurrency

PreviousParallel vs ConcurrentNextLoad Balancing - Nginx

Last updated 5 years ago

Was this helpful?

Problems

Dining philosophers problem

Wikipedia:

The problem was designed to illustrate the challenges of avoiding deadlock, a system state in which no progress is possible.

https://en.wikipedia.org/wiki/Dining_philosophers_problem
http://adit.io/posts/2013-05-11-The-Dining-Philosophers-Problem-With-Ron-Swanson.html
https://rosettacode.org/wiki/Dining_philosophers
https://sudocoding.xyz/dining-philosophers-problem-golang/
https://www.baeldung.com/java-dining-philoshophers