Einzelnen Beitrag anzeigen

QuickAndDirty

Registriert seit: 13. Jan 2004
Ort: Hamm(Westf)
1.962 Beiträge
 
Delphi 12 Athens
 
#3

AW: TThreadedQueue vs ThreadedRingBuffer

  Alt Gestern, 17:47
Es ist ein Ringpuffer
FqueueSize minus fqueueOffset Ist die Länge der Schlange im Ringpuffer. FQueueSize hat vielleicht nicht ganz den richtigen Bezeichner! Length(FQueue) ist die größe des Ringpuffers.
FQueue ist ein Array = Der Puffer.
Der Schreib-Index des Ringpuffers wird wie folgt ermittelt
Code:
(FQueueOffset + FQueueSize) mod Length(FQueue)
FQueueSize modulo 10
ergibt indizes 0..9 in einem RING
FQueueSize = 1401
würde einen index 1 ergeben da 1401 modulo 10 gleich 1 ist!

man kann FQueueSize einfach immer hochzählen solange man den index über modulo ermittelt.
Andreas
Monads? Wtf are Monads?

Geändert von QuickAndDirty (Gestern um 17:51 Uhr)
  Mit Zitat antworten Zitat