08 2023 档案

摘要:``` @echo off setlocal enabledelayedexpansion REM do something set start_time=%time% timeout /t 3 set end_time=%time% REM delta time set /a delta_hour 阅读全文
posted @ 2023-08-24 21:05 BuzzWeek 阅读(183) 评论(0) 推荐(0) 编辑
摘要:# std::condition_variable * 需要配合unique_lock使用,`wait(unique_lock&)` * notify_one()调用时,只有随机一个wait()线程会得到通知 * notify_all(),所有wait()线程会被通知并得到执行 * wait()调用 阅读全文
posted @ 2023-08-02 22:10 BuzzWeek 阅读(58) 评论(0) 推荐(0) 编辑
摘要:# std::unique_lock * 用法类似lock_guard,离开作用域后自动unlock * 定义的时候可以不需要mutex初始化,可以为空 * 可以手动调用lock(),unlock() ```cpp // unique_lock example #include // std::co 阅读全文
posted @ 2023-08-02 21:00 BuzzWeek 阅读(114) 评论(0) 推荐(0) 编辑
摘要:# shared_mutex * shared_mutex::lock()用法同mutex::lock() * shared_mutex::lock_shared()允许多线程同时进入临界区,只用用于只读场景,不然是线程不安全的 * shared_mutex::lock_shared()与share 阅读全文
posted @ 2023-08-01 22:13 BuzzWeek 阅读(223) 评论(0) 推荐(0) 编辑
摘要:# 一个mutex导致的死锁问题 单核实时可抢占的系统中,优先级不同的三个线程A/B/C, A>B>C * 当C先获得时间片开始执行,并获得锁 * A因为高优先级,被唤醒并中断C,但没有得到锁,而阻塞 * B获得执行机会,由于优先级高于C,B会一直执行,让AC系统无法取得任何进展 ```cpp st 阅读全文
posted @ 2023-08-01 13:17 BuzzWeek 阅读(27) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示