--------------------
sm_producer_consumer (SM Producer Consumer) - is an open-source multi-thread demo/template
resolving the producer-consumer (bounded-buffer) problem
--------------------
Features of the sm_producer_consumer (SM Producer Consumer) tool:
- Multi-thread demo/template, that resolves producer-consumer problem (bounded-buffer problem);
- Using thread support primitives (classes, api), which are parts of the C++ (C++11) language, defined by
the standard ISO/IEC 14882:2011;
- Using several producer-consumer objects, which use suite of limited-size queues
shared by various number of threads with various productivity/periodicity/frequency;
- Writing processed results into the text file (in the special directory);
- Logging results and applications workflow;
- Multi-thread (thread-safe) log library, that supports output to the log file and/or console;
- Multi-thread (thread-safe) log library, supports log level output (TRACE, DEBUG, INFO, WARN, ERROR, FATAL);
- Usage string secure library in some C-language functions;
- Self-stopping support, when file '.stop' is placed in the special directory;
--------------------
Technologies and tools:
- Linux Platform: C/C11/C++/C++11, gcc, g++, Make Tool, Kdbg,
Eclipse IDE for C/C++ Developers, valgrind, Bash scripts, Git;
- Virtual Box (Virtualization Software), Various distros of Linux (Debian 9/10, OpenSUSE, Ubuntu,
Mint);
--------------------
Links:
Version 0.0.1.1:
http://smansoft.com/sm_producer_consumer/0.0.1.1/
http://smansoft.com/sm_producer_consumer/0.0.1.1/ReadMe.txt
http://smansoft.com/sm_producer_consumer/0.0.1.1/Install.txt
http://smansoft.com/sm_producer_consumer/0.0.1.1/License.txt
http://smansoft.com/sm_producer_consumer/0.0.1.1/Help.txt
http://smansoft.com/sm_producer_consumer/0.0.1.1/ChangeLog.txt
http://blog.smansoft.com/2021/05/12/open-source-multi-thread-demo/template-resolving-the-producerconsumer-bounded-buffer-problem-sm-producer-consumer-0.0.1.1/
Screenshots (.jpg), demo log file (.log), demo result file (.out.txt):
http://smansoft.com/sm_producer_consumer/0.0.1.1/examples/linux/
--------------------
Copyright (C) 2021 SManSoft
Sergey Manoylo