LogRecordSequence.TailPinned Událost

Definice

Signalizuje potřebu přesunout ocas sekvence.

public:
 virtual event EventHandler<System::IO::Log::TailPinnedEventArgs ^> ^ TailPinned;
public event EventHandler<System.IO.Log.TailPinnedEventArgs> TailPinned;
member this.TailPinned : EventHandler<System.IO.Log.TailPinnedEventArgs> 
Public Custom Event TailPinned As EventHandler(Of TailPinnedEventArgs) 

Event Type

Implementuje

Příklady

Tento příklad ukazuje, jak použít TailPinned událost.

recordSequence.RetryAppend = true;
recordSequence.TailPinned += new EventHandler<TailPinnedEventArgs>(HandleTailPinned);

void HandleTailPinned(object sender, TailPinnedEventArgs tailPinnedEventArgs)
{
   // tailPinnedEventArgs.TargetSequenceNumber is the target
   // sequence number to free up space to.
   // However, this sequence number is not necessarily valid.  We have
   // to use this sequence number as a starting point for finding a
   // valid point within the log to advance toward. You need to
   // identify a record with a sequence number equal to, or greater
   // than TargetSequenceNumber; let's call this
   // realTargetSequenceNumber. Once found, move the base

   recordSequence.AdvanceBaseSequenceNumber(realTargetSequenceNumber);

}

Poznámky

Tuto událost můžete aktivovat, když sekvence záznamů vyčerpala místo. Když se tato událost aktivuje, posune se konec sekvence (tj. základní pořadové číslo) dopředu, aby se uvolnilo místo.

Událost může být aktivována kdykoli, když se sekvence záznamu rozhodne, že musí uvolnit místo z jakéhokoli důvodu. Modul zásad CLFS se například může rozhodnout událost aktivovat, když zjistí, že chvosty dvou klientů protokolu sdílejících stejný soubor protokolu jsou příliš daleko. Uvolnění místa lze provést buď zápisem oblastí restartování, nebo zkrácením protokolu a pomocí AdvanceBaseSequenceNumber metody uvolnit místo. Ukázka kódu v části Příklad ukazuje druhý přístup.

Můžete také volat metodu WriteRestartAreaTailPinned mimo událost, aby se uvolnilo místo. Oblast restartování se podobá kontrolnímu bodu v jiných systémech zpracování protokolů. Volání této metody označuje, že aplikace bere v úvahu všechny předchozí záznamy před úplným dokončením oblasti restartování a použitelné pro budoucí připojení záznamů. Podobně jako u jiných záznamů vyžaduje záznam napsaný touto metodou skutečné volné místo v protokolu, aby fungoval.

Platí pro