vibe.d beta banner
get vibe.d
0.7.30

Class RecursiveTaskMutex

Recursive mutex implementation for tasks.

This mutex type can be used in exchange for a core.sync.mutex.Mutex, but does not block the event loop when contention happens.

Inherits from

  • core.sync.mutex.Mutex (base class)
  • Lockable

Constructors

Name Description
this
this

Methods

Name Description
lock
tryLock
unlock

Notice

Because this class is annotated nothrow, it cannot be interrupted using vibe.core.task.Task.interrupt(). The corresponding InterruptException will be deferred until the next blocking operation yields the event loop.

Use InterruptibleRecursiveTaskMutex as an alternative that can be interrupted.

See Also

TaskMutex, core.sync.mutex.Mutex

Authors

Leonid Kramer, Sönke Ludwig, Manuel Frischknecht

Copyright

© 2012-2015 RejectedSoftware e.K.

License

Subject to the terms of the MIT license, as written in the included LICENSE.txt file.