• Navigation überspringen
  • Zur Navigation
  • Zum Seitenende
Organisationsmenü öffnen Organisationsmenü schließen
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
  • FAUZur zentralen FAU Website
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Suche öffnen
  • English
  • Campo
  • StudOn
  • FAUdir
  • Stellenangebote
  • Lageplan
  • Hilfe im Notfall
  1. Friedrich-Alexander-Universität
  2. Technische Fakultät
  3. Department Informatik
Friedrich-Alexander-Universität Lehrstuhl für Informatik 4 (Systemsoftware)
Menu Menu schließen
  • Lehrstuhl
    • Team
    • Aktuelles
    • Kontakt und Anfahrt
    • Leitbild
    • 50-jähriges Jubiläum
    Portal Lehrstuhl
  • Forschung
    • Forschungsbereiche
      • Betriebssysteme
      • Confidential Computing
      • Embedded Systems Software
      • Verteilte Systeme
    • Projekte
      • AIMBOS
      • BALu
      • BFT2Chain
      • DOSS
      • Mirador
      • NEON
      • PAVE
      • ResPECT
      • Watwa
    • Projektkampagnen
      • maRE
    • Seminar
      • Systemsoftware
    Portal Forschung
  • Publikationen
  • Lehre
    • Sommersemester 2025
      • Applied Software Architecture
      • Ausgewählte Kapitel der Systemsoftware
      • Betriebssystemtechnik
      • Projekt angewandte Systemsoftwaretechnik
      • System-Level Programming
      • Systemnahe Programmierung in C
      • Systemprogrammierung 1
      • Verteilte Systeme
    • Wintersemester 2025/26
      • Systemprogrammierung 2
      • Betriebssysteme
      • Middleware – Cloud Computing
      • Echtzeitsysteme
      • Virtuelle Maschinen
      • Web-basierte Systeme
      • Projekt angewandte Systemsoftwaretechnik
      • Aktuelle Entwicklung in Verteilten und Objektorientierten Betriebssystemen (für Bachelor-/Masterarbeit)
    Portal Lehre
  • Examensarbeiten
  1. Startseite
  2. Extern

Extern

Bereichsnavigation: Lehre
  • Betriebssysteme

    Aufgabe 6: Synchronisation

    Public Member Functions | List of all members
    BBuffer< T, CAP > Class Template Reference

    The class BBuffer implements a bounded buffer, that is a circular buffer with a fixed capacity. More...

    #include <object/bbuffer.h>

    Public Member Functions

     BBuffer ()
     Constructor that initialized an empty buffer.
     
    bool produce (T val)
     Add an element to the buffer. More...
     
    bool consume (T &val)
     Remove an element from the buffer. More...
     

    Detailed Description

    template<typename T, unsigned CAP>
    class BBuffer< T, CAP >

    The class BBuffer implements a bounded buffer, that is a circular buffer with a fixed capacity.

    Template Parameters
    Tthe type of data to be stored
    CAPthe buffers capacity (must be greater than 1)

    Member Function Documentation

    template<typename T , unsigned CAP>
    bool BBuffer< T, CAP >::produce ( T  val)
    inline

    Add an element to the buffer.

    Parameters
    valThe element to be added.
    Returns
    false if the buffer is full and no element can be added; true otherwise.
    template<typename T , unsigned CAP>
    bool BBuffer< T, CAP >::consume ( T &  val)
    inline

    Remove an element from the buffer.

    Parameters
    valOutput parameter that receives the next element. If there is (currently) no next element, val will not be modified.
    Returns
    false if the buffer was empty; true if the buffer was not empty and an element was written to val.

    The documentation for this class was generated from the following file:
    • object/bbuffer.h
    Friedrich-Alexander-Universität
    Erlangen-Nürnberg

    Schlossplatz 4
    91054 Erlangen
    • Impressum
    • Datenschutz
    • Barrierefreiheit
    • Facebook
    • RSS Feed
    • Xing
    Nach oben