SpreadsheetGear The Performance Spreadsheet Component Company 
ReleaseLock Method
See Also  Example
SpreadsheetGear Namespace > IWorkbookSet Interface : ReleaseLock Method
Releases a lock acquired with GetLock and starts background calculation if appropriate.

Syntax

C# 
virtual void ReleaseLock()

Example

Demonstrate using a workbook set in a thread safe manner.
C#Copy Code
void DoSomeThreadSafeWork(IWorkbookSet workbookSet) 
        { 
            // Interrupt background calculation if necessary and acquire an 
            // exclusive lock on the workbook set. 
            workbookSet.GetLock(); 
  
            try { 
                // Do some work... 
            } 
            finally { 
                // Release the lock on the workbook set and start background 
                // calculation if appropriate. 
                workbookSet.ReleaseLock(); 
            } 
        } 
    
Visual BasicCopy Code
Sub DoSomeThreadSafeWork(ByVal workbookSet As IWorkbookSet)
            ' Interrupt background calculation if necessary and acquire an
            ' exclusive lock on the workbook set.
            workbookSet.GetLock()

            Try
                ' Do some work...
            Finally
                ' Release the lock on the workbook set and start background
                ' calculation if appropriate.
                workbookSet.ReleaseLock()
            End Try
        End Sub 'DoSomeThreadSafeWork

Remarks

This method is thread safe.

Calls to GetLock may be nested. ReleaseLock must be called once for each call to GetLock.

Interruptible background calculation will be started if the following conditions are all met:

  • The last lock acquired by the current thread is being released.
  • There are no other threads waiting to acquire a lock on this workbook set.
  • BackgroundCalculation is set to true.
  • Calculation is not set to Calculation.Manual.

Requirements

Platforms: Windows Vista, Windows XP, Windows Server 2008, Windows Server 2003, Windows 2000, Windows Me and Windows 98, including 32 bit and 64 bit editions where applicable. SpreadsheetGear for .NET 1.x requires the Microsoft .NET Framework 1.1 or .NET 2.0 (works with .NET 3.x). SpreadsheetGear for .NET 2007 requires the Microsoft .NET Framework 2.0 (works with .NET 3.x).

See Also