Files
XCSDD/docs/api/threading/mutex/trylock.md
ssdfasd 58a83f445a fix: improve doc link navigation and tree display
- Fix link resolution with proper relative/absolute path handling
- Improve link styling with underline decoration
- Hide leaf nodes from tree, only show directories
- Fix log file path for packaged app
2026-03-19 12:44:08 +08:00

751 B
Raw Permalink Blame History

Mutex::TryLock

bool TryLock()

尝试获取互斥锁(非阻塞)。如果锁可用则立即获取并返回 true否则立即返回 false 而不阻塞。

参数:

返回: bool - 获取成功返回 true锁不可用返回 false

复杂度: O(1)

使用场景: 适用于需要尝试获取锁但不希望阻塞的场景,如实现无锁算法或避免死锁。

示例:

Threading::Mutex mtx;
volatile bool updated = false;

void TryUpdate() {
    if (mtx.TryLock()) {
        updated = true;
        mtx.Unlock();
        printf("Update succeeded\n");
    } else {
        printf("Update skipped (lock held)\n");
    }
}

相关文档