A Ring-Buffer instance could be used with element types
- char
- long
- long long
- void*
.
Focus is on a hardened SW structure with buffer-instance-pointer check (not very fast but more secure).
Some features are globally choosable on compile-time (e.g. switch multithread support off completely to have faster access).
Note: User Interface is for Test and Tutor Code only.

Features

  • Select Ring-Buffer type on creation-time (-> per Ring-Buffer instance)
  • In C++ as well usable - ring-buffer source code in C, embraced with 'extern "C"'
  • Multithreading support for windows (CriticalSection), C++ (std::mutex) and POSIX (pthread_mutex)
  • A tutor C-file should help to understand APIs and functionality easier
  • Use as a FIFO of course, e.g. to realize asynchronous state-machines
  • Wrapping of put/get/.. functions easy because of function-ptr integration in public Ring-Buffer instance struct variable
  • LIFO prepared (Stack-Buffer, NY-supported)
  • See readme file ~under~ "files" for more information
  • Only a few libraries needed (see code / makefile)

Project Activity

See All Activity >

Categories

Algorithms, Libraries

Follow ringBufU

ringBufU Web Site

Other Useful Business Software
Get Avast Free Antivirus with 24/7 AI-powered online scam detection Icon
Get Avast Free Antivirus with 24/7 AI-powered online scam detection

Get protection for today’s online threats. Free.

Award-winning antivirus protection, as well as protection against online scams, dangerous Wi-Fi connections, hacked accounts, and ransomware. It includes Avast Assistant, your built-in AI partner, which gives you help with suspicious online messages, offers, and more.
Free Download
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of ringBufU!

Additional Project Details

Operating Systems

Linux, Mac, Windows

Intended Audience

Developers

User Interface

Command-line

Programming Language

C++, C

Related Categories

C++ Algorithms, C++ Libraries, C Algorithms, C Libraries

Registered

2019-06-09