This class represents simple wait lock that allows to block current thread until signal is received.

Use case

You can use this class to wait for different actions to complete

var threadLock := new Lock;

async begin
  //perform action on another thread

//block current thread and wait for other thread to send a signal.


  • Reference:
    • RemObjects.Elements.EUnit.dll  .NET, .NET Standard 2.0
    • remobjects.elements.eunit.jar  Cooper
    • EUnit.fx  Island, macOS
    • libEUnit.fx  Toffee
  • Namespace: RemObjects.Elements.EUnit
  • Platforms: .NET, .NET Standard 2.0, Cooper, Island, macOS, Toffee
  • Ancestry: AbstractLock | Lock

Instance Methods

Reset  override virtual .NET, .NET Standard 2.0, Cooper, Island, macOS

Sets internal state of the lock to non signaled.


method Reset


void Reset()


func Reset()


void Reset()


Sub Reset()

Reset Reset()  override Toffee


func Reset(Reset )


  • :

Signal  override virtual .NET, .NET Standard 2.0, Cooper, Island, macOS

Sets internal state to singaled allowing waiting threads to proceed.


method Signal


void Signal()


func Signal()


void Signal()


Sub Signal()

Signal Signal()  override Toffee


func Signal(Signal )


  • :

WaitFor  override virtual .NET, .NET Standard 2.0, Cooper, Island, macOS

Blocks current thread until signaled.


method WaitFor


void WaitFor()


func WaitFor()


void WaitFor()


Sub WaitFor()

WaitFor (Int32): Boolean  override

Blocks current thread until signaled for specified amoun of milliseconds.


method WaitFor(Timeout: Int32): Boolean


Boolean WaitFor(Int32 Timeout)


func WaitFor(_ Timeout: Int32) -> Boolean


Boolean WaitFor(Integer Timeout)


Function WaitFor(Timeout As Int32) As Boolean


  • Timeout: The number of milliseconds to wait.

WaitFor WaitFor()  override Toffee


func WaitFor(WaitFor )


  • :