C++11线程保护

多线程通信和同步技术

什么是 CPU 时间片

  1. CPU 时间片是一个时间段,表示操作系统分配给某个线程或进程在 CPU 上运行的时间。
    • 现代操作系统使用时间片轮转调度(time-sharing scheduling)机制,在多个线程或进程之间快速切换 CPU,以实现多任务运行。
    • 每个线程被分配的时间片通常是几十毫秒(如 10ms、50ms 等),非常短。
  2. 在这个时间段内:
    • 被分配时间片的线程拥有 CPU 的执行权,可以运行自己的代码。
    • 时间片结束后,操作系统可能会将 CPU 分配给另一个线程,当前线程进入就绪态阻塞态

就绪态:线程交给我们的OS,由CPU来进行调度。

竞争状态:如果多线程访问到同一个资源。

避免竞争状态:

读写共享数据的代码片段称为临界区。
#include 
#include 
using namespace std;
mutex mu;
void ThreadSub()
{
    //锁的这个资源申请:

你可能感兴趣的:(c++,开发语言)