How ddanrom05/productor-consumidor works
This is a single-file C++ producer–consumer simulation. The producer and consumer maintain separate linked-list replicas and coordinate operations through a file-backed protocol channel; a file-backed Peterson implementation guards their critical sections. The excerpt shows initialization and these component responsibilities, but omits the program’s launch and some loop details, so those connections are not inferred.
Main entry points: practica2.cpp Operation protocol
Components 10
File coordination
- Operation protocol
practica2.cpp - Operation channel
practica2.cpp - Peterson lock
practica2.cpp - Lock state files
practica2.cpp
Data structures
- Producer list
practica2.cpp - Consumer list
practica2.cpp - Linked-list implementation
practica2.cpp
Other components
- Program entry
practica2.cpp
Connections 12
- Program entry → Operation protocol: initializes
- Program entry → Peterson lock: initializes
- Producer → Peterson lock: enters critical section
- Consumer → Peterson lock: enters critical section
- Peterson lock → Lock state files: reads and writes
- Producer → Operation protocol: reads and writes operations
- Consumer → Operation protocol: reads and writes operations
- Operation protocol → Operation channel: reads and writes
- Producer → Producer list: produces and replicates
- Consumer → Consumer list: consumes and replicates
- Producer list → Linked-list implementation: uses
- Consumer list → Linked-list implementation: uses