classtk_1_1_lock_guard.md 2.4 KB


title: tk::LockGuard summary: ミューテックスのロックをスコープ単位で安全に管理する RAII クラス (std::lock_guard 相当)


tk::LockGuard

ミューテックスのロックをスコープ単位で安全に管理する RAII クラス (std::lock_guard 相当) More...

#include <sync.hpp>

Public Functions

Name
LockGuard(Lockable & m)
ロック対象を受け取り、即座に lock() します
~LockGuard()
LockGuard(const LockGuard & ) =delete
LockGuard & operator=(const LockGuard & ) =delete

Detailed Description

template <typename Lockable >
class tk::LockGuard;

ミューテックスのロックをスコープ単位で安全に管理する RAII クラス (std::lock_guard 相当)

Template Parameters:

構築時に [lock()](Namespaces/namespacetk.md#function-lock) を呼び、デストラクタで自動的に [unlock()](Namespaces/namespacetk.md#function-unlock) を呼び出します。 途中で return や例外が発生しても確実にロックが解放されます。

Public Functions Documentation

function LockGuard

inline explicit LockGuard(
    Lockable & m
)

ロック対象を受け取り、即座に lock() します

Parameters:

  • m ロック対象のミューテックス参照

function ~LockGuard

inline ~LockGuard()

スコープ終了時に自動的に unlock() します

function LockGuard

LockGuard(
    const LockGuard & 
) =delete

function operator=

LockGuard & operator=(
    const LockGuard & 
) =delete

Updated on 2026-10-02 at 14:01:32 +0900